Kata kunci nilai headers
harus berupa string atau buffer?
Jika kata kunci dnt
dan nilai upgrade-insecure-requests
adalah string atau buffer , itu benar, tetapi nilainya int, itu salah. Mengapa demikian?
Benar:
'dnt': '1',
'upgrade-insecure-requests': '1',
Salah:
'dnt': 1,
'upgrade-insecure-requests': 1,
Mengapa?
@wut0n9 Perubahan perilaku ini tidak ada di v2.10.0, tetapi di cabang master saat ini.
Namun, itu adalah bug yang sebenarnya: #3366 telah meregresi ini. @nateprewitt , apakah Anda tertarik untuk mencoba memperbarui dengan perbaikan untuk ini?
Header harus selalu string. Saya tidak berpikir ini adalah regresi yang signifikan jika regresi sama sekali. Kami selalu mendokumentasikan bahwa nilai header harus berupa string.
Terlepas dari apa yang kami dokumentasikan, ini dulu berhasil dan sekarang tidak. Kami akan memecahkan _lot_ kode jika kami tidak mengubahnya kembali.
Ya, saya akan membahas ini @Lukasa.
Lihat juga https://github.com/kennethreitz/requests/issues/865 dan https://github.com/kennethreitz/requests/pull/866
Saya tidak tahu berapa sebenarnya "banyak" dalam kasus ini.
@ sigmavirus24 telah menautkan ke pendapat sebelumnya yang relevan, yang menunjukkan bahwa sebenarnya kami tidak mengizinkan nilai header non-string. Jadi itu berarti ini bukan bug: kami membuat revisi yang berada dalam cakupan definisi API.
@Lukasa benar, saya terus terang terkejut ini tidak rusak sebelumnya. Arti non-byte/str sebagai nilai header tidak terdefinisi sejauh yang saya ketahui.
Komentar yang paling membantu
Terlepas dari apa yang kami dokumentasikan, ini dulu berhasil dan sekarang tidak. Kami akan memecahkan _lot_ kode jika kami tidak mengubahnya kembali.