Pagkatapos ng CONNECT request line, pag-aari pa rin ng proxy ang mga byte na ito:

CONNECT service.example:443 HTTP/1.1\r\n
Host: service.example:443\r\n
User-Agent: example-client\r\n
\r\n

Ang pagpapasa ng Host o User-Agent sa port 443 ay nagbibigay sa destinasyon ng plaintext headers kung saan ito umaasa ng TLS. Maaaring mangyari ang kabiguang iyon bago pa maging mahalaga ang pagpili ng cipher.

  1. Basahin at i-parse hanggang sa terminator ng headers na blangkong linya, sa loob ng setup deadline at limitasyon sa laki ng header.
  2. Ilapat ang authentication ng proxy at patakaran ng destinasyon.
  3. Itatag ang aprubadong koneksyon sa target.
  4. Ipadala ang matagumpay na CONNECT reply at pumasok sa tunnel mode.

Itago ang mga naka-buffer na byte pagkatapos ng hangganan para sa naaangkop na susunod na estado. Huwag itong itapon o ituring ang mga request header ng proxy bilang susunod na request ng website.

May katumbas na obligasyon ang kliyente sa panig ng tugon: tapusin ang pagbasa ng matagumpay na CONNECT reply bago simulan ang tunneled protocol. Dapat magkasundo ang dalawang dulo sa hangganan kung saan nagbabago ng papel ang stream.

Kaugnay na mga artikulo