مادة تحريرية
شرح

CORS: لماذا قد ينجح الطلب في curl ويفشل داخل المتصفح؟

CORS سياسة يطبقها المتصفح على القراءة بين origins، لذلك نفس API قد تستجيب على الشبكة لكن يمنع JavaScript من استخدام الاستجابة.

الإجابة السريعة

CORS سياسة يطبقها المتصفح على القراءة بين origins، لذلك نفس API قد تستجيب على الشبكة لكن يمنع JavaScript من استخدام الاستجابة.

  • Same-origin policy هي الأساس، وCORS يحدد استثناءات صريحة.
  • بعض الطلبات تستدعي preflight باستخدام OPTIONS قبل الطلب الفعلي.
  • Access-Control-Allow-Origin لا ينبغي أن يعكس أي Origin بلا تحقق عندما توجد بيانات حساسة.

المشكلة ليست أن الخادم لم يرد

قد يصل الطلب فعليًا ويحصل المتصفح على استجابة، لكنه يحجبها عن JavaScript إذا لم تتطابق headers مع سياسة CORS المطلوبة.

متى يظهر Preflight؟

الطلبات غير البسيطة في method أو headers أو content type قد تحتاج OPTIONS أولًا. لذلك يجب أن يتعامل الـserver أو reverse proxy مع preflight بشكل صحيح.

بعد هذه المادة

تابع القراءة

من نفس القسم04
  1. 02
  2. 03
  3. 04
اختيار القراء

الأكثر قراءة

الترتيب الكامل
  1. 01
  2. 02
  3. 03
  4. 04
  5. 05
يتجدد مع النشر

أحدث المواد

  1. 01
  2. 02
  3. 03
  4. 04
  5. 05
  6. 06
شارك رأيك

التعليقات

0

كن أول من يكتب تعليقًا.