إتش تي تي بي 303 هو وسيلة لإعادة توجيه تطبيقات الويب إلى معرف الموارد الموحد الجديد، خاصة بعد تنفيذ إتش تي تي بي POST ، منذ RFC 2616 (HTTP 1.1).
وفقًا لـ RFC 7231، «تشير الاستجابة 303 لطلب GET إلى أن الخادم الأصلي لا يحتوي على تمثيل للمورد الهدف الذي يمكن نقله بواسطة الخادم عبر HTTP. ومع ذلك، تشير قيمة حقل» الموقع«إلى مورد وصفي للمورد الهدف، مثل أن يؤدي تقديم طلب استرجاع على ذلك المورد الآخر إلى تمثيل مفيد للمستلمين دون أن يعني أنه يمثل المورد الهدف الأصلي.»
يجب استخدام رمز الحالة هذا مع رأس الموقع، كما هو موضح أدناه. إذا كان الخادم يستجيب إلى POST أو طلب آخر غير ذي معنى مع 303 انظر استجابة أخرى وقيمة لرأس الموقع، من المتوقع أن يحصل العميل على المورد المذكور في رأس الموقع باستخدام طريقة GET ؛ لتشغيل طلب إلى المورد الهدف باستخدام نفس الطريقة، من المتوقع أن يقدم الخادم استجابة 307 إعادة توجيه مؤقتة .
تم اقتراح «الآخر» كطريقة للاستجابة لطلب URI يحدد كائنًا حقيقيًا وفقًا لنظرية الويب الدلالية (الطريقة الأخرى هي استخدام URIs التجزئة).[2] على سبيل المثال، إذا حددت http://www.example.com/id/alice[وصلة مكسورة] شخصًا، أليس، فسيكون من غير المناسب أن يستجيب خادم لطلب GET بالرقم 200 موافق، لأن الخادم لم يتمكن من تسليم أليس بنفسها. بدلاً من ذلك، سيصدر الخادم ردًا 303 راجع استجابة أخرى تمت إعادة توجيهها إلى عنوان URI منفصل مع توفير وصف للشخص Alice.
303 أخرى يمكن استخدامها لأغراض أخرى. على سبيل المثال، عند إنشاء واجهة برمجة تطبيقات RESTful على الويب والتي تحتاج إلى العودة إلى المتصل فورًا مع الاستمرار في التنفيذ بشكل غير متزامن (مثل تحويل صورة طويل الأمد)، يمكن أن توفر واجهة برمجة تطبيقات الويب اختبار URI للحالة يسمح للعميل الأصلي الذي طلب التحويل للتحقق من حالة التحويل. يجب أن تقوم واجهة برمجة التطبيقات للتحقق من الحالة هذه بإرجاع 303 راجع الآخر للمتصل عند اكتمال المهمة، بالإضافة إلى معرف URI لاسترداد النتيجة في حقل رأس <i id="mwHg">الموقع</i> HTTP.[3]
مثال
طلب الزبون:
POST / HTTP/1.1
Host: www.example.com
استجابة الخادم:
HTTP/1.1 303 See Other
Location: http://example.org/other
انظر أيضا
المراجع