يجب أن تكون قيمة الكلمات الرئيسية headers
عبارة عن سلسلة أم مخزن مؤقت؟
إذا كانت قيمة الكلمات الرئيسية dnt
و upgrade-insecure-requests
عبارة عن سلسلة أو مخزن مؤقت ، فهذا صحيح ، لكن القيمة صحيحة ، فهذا خطأ ، لماذا؟
حق:
'dnt': '1',
'upgrade-insecure-requests': '1',
خاطئ:
'dnt': 1,
'upgrade-insecure-requests': 1,
لماذا ا؟
@ wut0n9 هذا التغيير السلوكي ليس في v2.10.0 ، إنه في الفرع الرئيسي الحالي.
ومع ذلك ، هذا خطأ حقيقي: # 3366 تراجع عن هذا. nateprewitt ، هل أنت مهتم بمحاولة التحديث مع إصلاح لهذا؟
يجب أن تكون الرؤوس دائمًا عبارة عن سلسلة. لا أعتقد أن هذا هو تراجع كبير إذا كان الانحدار على الإطلاق. لقد وثقنا دائمًا أن قيم الرأس يجب أن تكون سلاسل.
بغض النظر عما وثقناه ، كان هذا يعمل ولكنه لم يعد كذلك الآن. سنكسر _lot_ من التعليمات البرمجية إذا لم نغير هذا مرة أخرى.
نعم ، سأحصل مباشرة على هذاLukasa.
راجع أيضًا https://github.com/kennethreitz/requests/issues/865 و https://github.com/kennethreitz/requests/pull/866
لا أعرف مقدار "الكثير" في الواقع في هذه الحالة.
تم ربط @ sigmavirus24 بالآراء السابقة ذات الصلة ، مما يشير إلى أننا في الواقع لا نسمح بقيم الترويسة غير السلسلة. هذا يعني أن هذا ليس خطأ: لقد قمنا بإجراء مراجعة ضمن نطاق تعريف واجهة برمجة التطبيقات.
Lukasa صحيح ، أنا مندهش بصراحة أن هذا لم ينكسر سابقًا. معنى non-bytes / str كقيمة رأس غير معرف بقدر ما أشعر بالقلق.
التعليق الأكثر فائدة
بغض النظر عما وثقناه ، كان هذا يعمل ولكنه لم يعد كذلك الآن. سنكسر _lot_ من التعليمات البرمجية إذا لم نغير هذا مرة أخرى.