Ключевые слова headers
значение должно быть строкой или буфером?
Если ключевые слова dnt
и upgrade-insecure-requests
value являются строкой или буфером , это правильно, но значение int - неправильно. Почему?
Верно:
'dnt': '1',
'upgrade-insecure-requests': '1',
Неправильный:
'dnt': 1,
'upgrade-insecure-requests': 1,
Почему?
@ wut0n9 Это изменение поведения не в версии 2.10.0, а в текущей основной ветке.
Однако это настоящая ошибка: # 3366 исправила это. @nateprewitt , вы заинтересованы в том, чтобы попытаться обновить исправление для этого?
Заголовки всегда должны быть строковыми. Я не думаю, что это значительный регресс, если вообще регресс. Мы всегда документировали, что значения заголовков должны быть строками.
Независимо от того, что мы документировали, раньше это работало, а теперь нет. Мы сломаем _лот_ кода, если не вернем его обратно.
Да, я займусь этим @Lukasa.
См. Также https://github.com/kennethreitz/requests/issues/865 и https://github.com/kennethreitz/requests/pull/866.
Я не знаю, сколько на самом деле "участка" в данном случае.
@ sigmavirus24 ссылается на соответствующие более ранние мнения, которые предполагают, что на самом деле мы не разрешаем значения заголовков, не являющиеся строками. Это означает, что это не ошибка: мы внесли поправку, которая находится в рамках определения API.
@ Лукаса, верно, я искренне удивлен, что это не
Самый полезный комментарий
Независимо от того, что мы документировали, раньше это работало, а теперь нет. Мы сломаем _лот_ кода, если не вернем его обратно.