CORS
CORS (مشاركة الموارد عبر المصادر)
آلية أمان في المتصفح تسمح لصفحات الويب بطلب موارد من نطاق مختلف عن النطاق الذي يقدم الصفحة، يتم التحكم فيها عبر رؤوس HTTP التي تحدد المصادر المسموح بها.
التفاصيل التقنية
يعمل CORS من خلال رؤوس HTTP: يحدد Access-Control-Allow-Origin المصادر المسموحة، ويسرد Access-Control-Allow-Methods طرق HTTP المسموحة، ويسمي Access-Control-Allow-Headers رؤوس الطلبات المسموحة. للطلبات غير البسيطة (تلك التي تحتوي على رؤوس مخصصة أو طرق غير GET/HEAD/POST)، ترسل المتصفحات طلب OPTIONS تمهيدي أولاً. يتيح Access-Control-Allow-Credentials: true نقل ملفات تعريف الارتباط. يخزن رأس Access-Control-Max-Age نتائج الطلب التمهيدي مؤقتًا. بدون رؤوس CORS المناسبة، تحظر المتصفحات استجابات fetch/XMLHttpRequest عبر المصادر.
مثال
```javascript
// CORS: web API example
const response = await fetch('/api/resource');
const data = await response.json();
console.log(data);
```