د CONNECT وروسته خالي کرښې ته انتظار وکړئ
د HTTP/1 CONNECT بشپړ ځواب ولولئ مخکې لدې چې ساکټ TLS ته وسپارئ، حتی که د حالت کرښه لومړی راشي.
کلاینټ 200 Connection Established ویني، TLS پیلوي او سمدلاسه هغه ځای کې چې باید د TLS ریکارډ وي بې معنی څیزونه راپور کوي. مخکې لدې چې د منزل د کوډ کولو تنظیمات ملامت کړئ، نیمګړی HTTP ځواب ولټوئ.
په HTTP/1 CONNECT تبادله کې د حالت کرښه یوازې د ځواب پیل دی. وروسته ترې د سرلیک ساحې راتلی شي. د بریالي CONNECT ځواب وروسته هغه خالي کرښه چې د سرلیک برخه پای ته رسوي، تونل ته لېږد ښیي.
HTTP/1.1 200 Connection Established\r\n
Proxy-Agent: example\r\n
\r\n
دا بایټونه کېدای شي په یو لوستل، په څو لوستلو، یا په داسې لوستل راشي چې بل بایټ هم ولري. TCP د سرور د لیکلو حدود نه ساتي.
لېږد په روښانه پارسر حالت بدل کړئ
- د حالت کرښه راټوله او تحلیل کړئ. د دقیق انګلیسي دلیل جملې پر ځای عددي حالت وکاروئ.
- دوام ورکړئ تر څو چې د سرلیک برخې بشپړ پای راشي. بریالۍ حالت کرښه پاتې ساحې نه ورکوي.
- په بریالي CONNECT ځواب کې هغه بایټ چې سمدلاسه د دې پای وروسته دی د تونل د معلوماتو پیل وګڼئ. په نورو ځوابونو کې د اړوند HTTP ځواب او تصدیق سمبالښت تعقیب کړئ.
- نښلون او هر نااستعمال شوي بایټونه د بل پروتوکول لخوا ملاتړ شوي بفر لرونکي I/O انټرفیس له لارې ولېږدئ.
وروستی ګام حتی د ښه جلا کوونکي پلټنې سره هم مهم دی. بفر لرونکی لوستونکی کېدای شي له ساکټ څخه ډېر څه کارولي وي چې پارسر غوښتي وو. په لخت ساکټ باندې TLS پیلول او هغه لوستونکی پرېښودل کېدای شي بایټونه د لوستونکي په شخصي بفر کې پرېږدي.
د ترتیب لپاره موده او د سرلیک اندازې حد وکاروئ. د پای مخکې EOF یو نیمګړی پروکسي ځواب دی، نه بلنه چې تل انتظار وکړئ یا سره له دې هم TLS هڅه وکړئ.
په څو حدودو فکر وکړئ
تصور وکړئ یو لوستل د Proxy-Agent: وروسته پای ته رسېږي. پارسر لا هم نور HTTP سرلیک بایټونه غواړي. تصور وکړئ بل لوستل د وروستي CRLF ترتیب په مینځ کې پای ته رسېږي. هغه لا هم بشپړه سرلیک برخه نه ده. اوس تصور وکړئ چې په همدې بفر کې بشپړه بریالۍ سرلیک برخه ده او وروسته ترې د تونل بایټونه راځي: هغه اضافي بایټونه باید لېږد ته واوړي.
407 یو بل پایله ده. هغه د تصدیق سمبالښت ته اړتیا لري؛ هغه د هغه تونل لپاره چې هېڅکله نه دی پرانیستل شوی د TLS ClientHello اجازه نه ورکوي.
که د لاس ورکولو پلي کول پخپله دنده نه وي، ساتل شوی کنیکټر غوره کړئ. دا حد په همدې ځای ښودل شوې HTTP/1 تبادلې پورې اړه لري. د HTTP/2 پروکسي CONNECT په بل ډول چوکاټ لرونکي سټریم کې وړي.