التابع HTTPRedirectHandler.redirect_request()‎‎ في بايثون

من موسوعة حسوب
< Python‏ | urllib‏ | request
مراجعة 21:17، 31 يناير 2019 بواسطة Mohammed Taher (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التابع <code>HTTPRedirectHandler.redirect_request()‎‎</code> في بايثون}}</noinclude> يعيد التابع كائن Request...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يعيد التابع كائن Request أو القيمة None استجابةً لعملية إعادة توجيه. يُستدعى التابع عند استخدام التوابع http_error_30*()‎ بالطريقة الافتراضية عند استقبال عملية إعادة توجيه من المخدّم. إن أجريت عملية إعادة التوجيه، فإنّ التابع سيعيد كائن Request جديدًا وذلك للسماح لتوابع http_error_30*()‎ بإعادة التوجيه إلى العنوان الجديد newurl. إن لم يحدث ما سبق فحاول إطلاق الاستثناء HTTPError إن لم يُعالج هذا العنوان من قبل أيّ معالج آخر، أو أعد القيمة None إن لم تتمكن من إطلاق الاستثناء وكان بإمكان معالج آخر القيام بذلك.

ملاحظة:

إن طريق الاستخدام الافتراضية لهذا التابع لا تتبع المعيار RFC 2616 بدقّة، والذي ينصّ على أنّ الاستجابتين 301 و 302 للطلبات من نوع POST يجب أن لا يعاد توجيهها تلقائيًا دون موافقة المستخدم. تسمّح المتصفّحات في الواقع بإعادة توجيه هذه الاستجابات تلقائيًا وذلك بتغيير نوع الطلب من POST إلى GET، ويستخدم التابع الطريقة ذاتها للقيام بذلك.

البنية العامة

HTTPRedirectHandler.redirect_request(req, fp, code, msg, hdrs, newurl)

مصادر