Python http.client CONNECT: HTTP/1.1 ຕັ້ງແຕ່ Python 3.12
ກວດສອບການຈັດຕັ້ງ Python ແລະ ການຂົນສົ່ງ ກ່ອນຈະນຳໃຊ້ວິທີແກ້ໄຂ HTTP/1.0 CONNECT ແບບເກົ່າ.
ຄຳກ່າວເກົ່າທີ່ວ່າ Python ສົ່ງ HTTP/1.0 ສຳລັບ CONNECT ສະເໝີ ບໍ່ແມ່ນກົດທົ່ວໄປທີ່ປອດໄພອີກຕໍ່ໄປ. Python 3.12 ໄດ້ປ່ຽນການເຮັດອຸໂມງຂອງ http.client ເປັນ HTTP/1.1 ແລະ ເພີ່ມການສ້າງຫົວຂໍ້ Host ໂດຍອັດຕະໂນມັດເມື່ອບໍ່ໄດ້ໃຫ້.
ການປ່ຽນແປງນັ້ນເປັນຂອງການຈັດຕັ້ງຫ້ອງສະໝຸດມາດຕະຖານທີ່ມີເອກະສານ. ຫ້ອງສະໝຸດ HTTP ລະດັບສູງກວ່າສາມາດຂຽນທັບ ຫຼື ຫໍ່ພຶດຕິກຳຂອງອຸໂມງໄດ້, ດັ່ງນັ້ນບັນທຶກສະບັບຂອງມັນ ແລະ ສະບັບຂອງ Python.
ຖ້າ proxy ປະຕິເສດອຸໂມງ, ໃຫ້ກວດເບິ່ງການແລກປ່ຽນ CONNECT ທີ່ລູກຄ້ານັ້ນສ້າງຂຶ້ນຈິງ. ການປ່ຽນສະບັບ HTTP ຂອງຄຳຮ້ອງປາຍທາງ ຫຼື ການເພີ່ມຫົວຂໍ້ Host ໃສ່ຄຳຮ້ອງເວັບໄຊ ບໍ່ຈຳເປັນຕ້ອງປ່ຽນຄຳຮ້ອງອຸໂມງກ່ອນໜ້າ.
ເຊັ່ນດຽວກັນ, ການແກ້ໄຂຊ່ອງຂໍ້ມູນສ່ວນຕົວໃນຕົວຢ່າງ Requests adapter ເກົ່າ ອາດລັອກແອັບພລິເຄຊັນໃຫ້ຕິດກັບ API ພາຍໃນທີ່ເກົ່າແກ່. ໃຫ້ເລືອກການລວມກັນຂອງລູກຄ້າ ແລະ ສະພາບແວດລ້ອມການເຮັດວຽກທີ່ເຂົ້າກັນໄດ້ ແລະ ຮອງຮັບ, ພ້ອມທັງການເຊື່ອມຕໍ່ proxy ທີ່ມີເອກະສານ.
ແຍກການສົນທະນາສອງອັນໃນລາຍງານ: ຄຳຮ້ອງ HTTP ທີ່ໃຊ້ເປີດອຸໂມງ, ຈາກນັ້ນໂປຣໂຕຄອນທີ່ເຈລະຈາກັບປາຍທາງຢູ່ພາຍໃນ. ພວກມັນອາດໃຊ້ສະບັບຕ່າງກັນ ແລະ ລົ້ມເຫຼວໃນຂັ້ນຕອນຕ່າງກັນ.