Python http.client CONNECT: HTTP/1.1 frá Python 3.12
Athugaðu Python- og flutningsútfærsluna áður en þú beitir gömlum HTTP/1.0 CONNECT lausnum.
Gamla fullyrðingin um að Python sendi alltaf HTTP/1.0 fyrir CONNECT er ekki lengur örugg almenn regla. Python 3.12 breytti göngun http.client í HTTP/1.1 og bætti við sjálfvirkri myndun Host-hauss þegar hann er ekki gefinn.
Þessi breyting tilheyrir skjalfestri útfærslu staðalbókasafnsins. HTTP-bókasafn á hærra stigi getur hnekkt eða vafið hegðun ganganna, svo skráðu útgáfu þess auk útgáfu Python.
Ef milliþjónn hafnar göngunum skaltu skoða CONNECT-skiptin sem þessi biðlari framleiddi í raun. Að breyta HTTP-útgáfu áfangastaðarbeiðninnar eða bæta Host-haus við beiðni vefsins breytir ekki endilega fyrri göngubeiðninni.
Á sama hátt getur breyting á einkareitum í gömlu Requests-adapterdæmi læst forritinu við úrelt innra API. Veldu frekar samhæfa og studda samsetningu biðlara og keyrsluumhverfis og skjalfesta milliliðasamþættingu.
Haltu samtalunum tveimur aðskildum í skýrslunni: HTTP-beiðninni sem notuð var til að opna göngin, og síðan samskiptareglunum sem samið var við áfangastaðinn inni í þeim. Þau geta notað mismunandi útgáfur og mistekist á mismunandi stigum.