Python http.client CONNECT: Python 3.12ден бери HTTP/1.1
Эски HTTP/1.0 CONNECT чечимдерин колдонуудан мурун Python жана транспорт ишке ашырылышын текшериңиз.
Python CONNECT үчүн дайыма HTTP/1.0 жөнөтөт деген эски ырастоо эми коопсуз жалпы эреже эмес. Python 3.12 http.client туннелин HTTP/1.1ге өзгөртүп, Host аталышы берилбесе, аны автоматтык түрдө түзүүнү кошту.
Бул өзгөрүү документтелген стандарттык китепкананын ишке ашырылышына таандык. Жогорку деңгээлдеги HTTP китепканасы туннелдин жүрүм-турумун алмаштырышы же капташы мүмкүн, ошондуктан анын версиясын жана Python версиясын жазып алыңыз.
Эгер прокси туннелди четке какса, ошол кардар чындап түзгөн CONNECT алмашуусун карап чыгыңыз. Максаттуу сурамдын HTTP версиясын өзгөртүү же веб-сайт сурамына Host аталышын кошуу мурунку туннел сурамын сөзсүз өзгөртпөйт.
Ошо сыяктуу эле, эски Requests адаптеринин мисалындагы жеке талааларды оңдоо колдонмону эскирген ички APIге бекитиши мүмкүн. Шайкеш келген жана колдоого алынган кардар менен аткаруу чөйрөсүнүн айкалышын жана документтелген прокси интеграциясын тандоо керек.
Отчеттогу эки сүйлөшүүнү өз-өзүнчө кармаңыз: туннелди ачуу үчүн колдонулган HTTP сурамы, анан анын ичинде максат менен келишилген протокол. Алар ар кандай версияларды колдонуп, ар кандай баскычтарда ийгиликсиз болушу мүмкүн.