crossorigin অ্যাট্রিবিউট কী?
crossorigin একটি CORS (Cross-Origin Resource Sharing) সেটিংস অ্যাট্রিবিউট। এটি <img>, <video>, <audio>, <script>, <link rel="preload"> এলিমেন্টে ব্যবহার হয়।
মানগুলো
crossorigin="anonymous"— কুکی/ক্রেডেনশিয়াল ছাড়া CORS রিকোয়েস্ট পাঠায়।crossorigin="use-credentials"— কুকি/HTTP অথেনটিকেশন সহ CORS রিকোয়েস্ট পাঠায়।
কেন দরকার? — Canvas Tainting প্রতিরোধ
যদি আপনি <img> বা <video> থেকে ক্যানভাসে drawImage() করেন, এবং সো municípioটা অন্য অরিজিন থেকে, তবে ক্যানভাস "tainted" হয়ে যায়। ফলে canvas.toDataURL(), getImageData(), toBlob() কল করলে SecurityError ফেলে।
সমাধান
- HTML-এ
crossorigin="anonymous"যোগ করুন। - সার্ভার থেকে রেসপন্স হেডার পাঠান:
Access-Control-Allow-Origin: *(অথবা নির্দিষ্ট অরিজিন)।
উদাহরণ
JavaScript Error Logging-এ ব্যবহার
crossorigin="anonymous"+ সার্ভার হেডারAccess-Control-Allow-Origin: *থাকলে,window.onerror-এ ক্রস-অরিজিন স্ক্রিপ্টের এক্স্যাক্ট এরর মেসেজ, লাইন নম্বর, স্ট্যাক ট্রেস পাওয়া যায়। নয়তো শুধু "Script error." মেসেজ পাওয়া যায়।