Setelah baris permintaan CONNECT, byte ini masih milik proksi:

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

Meneruskan Host atau User-Agent ke port 443 memberi tujuan header teks biasa di tempat yang mengharapkan TLS. Kegagalan itu dapat terjadi sebelum pilihan cipher menjadi penting.

  1. Baca dan uraikan hingga terminator header berupa baris kosong, dalam tenggat penyiapan dan batas ukuran header.
  2. Terapkan autentikasi proksi dan kebijakan tujuan.
  3. Buat koneksi target yang disetujui.
  4. Kirim balasan CONNECT yang berhasil dan masuk ke mode terowongan.

Pertahankan byte yang di-buffer setelah batas untuk keadaan berikutnya yang sesuai. Jangan membuangnya atau memperlakukan header permintaan proksi sebagai permintaan situs web berikutnya.

Klien memiliki kewajiban serupa di sisi respons: selesaikan membaca balasan CONNECT yang berhasil sebelum memulai protokol terowongan. Kedua ujung harus sepakat tentang batas tempat aliran berganti peran.

Artikel terkait