Anatomi Permintaan
Pelajaran 20 dari 47 dalam kursus Jaringan dengan Terminal di Coddy.
Di balik curl, permintaan HTTP adalah teks biasa yang dikirim melalui soket. Permintaan ini dimulai dengan satu baris yang menyebutkan keinginanmu:
GET /index.html HTTP/1.1Tiga bagian: method (jenis operasi), path (hal yang dituju), dan version. Setelah itu ada headers, satu per baris, lalu satu baris kosong, kemudian body opsional.
Baris kosong itu bukan hiasan. Baris itulah yang memberi tahu server bahwa headers sudah berakhir dan body, jika ada, dimulai. Permintaan tanpa baris kosong ini akan macet karena server masih menunggu sisa permintaan.
Kamu bisa mengirimkannya secara manual. nc membuka koneksi mentah dan apa pun yang kamu masukkan akan langsung dikirim:
printf 'GET / HTTP/1.0\r\n\r\n' | nc 127.0.0.1 9110\r\n adalah penanda akhir baris yang diwajibkan HTTP, dan penanda yang digandakan menghasilkan baris kosong itu.
Tantangan
SulitLewati curl sepenuhnya dan gunakan HTTP secara langsung.
- Buat
index.htmlyang berisiraw - Sajikan folder pada port 9110
- Kirim permintaan
GET /index.html HTTP/1.0mentah melaluincdan cetak hanya baris pertama dari responsnya
Baris pertama itu adalah baris status server. Output yang diharapkan:
HTTP/1.0 200 OKIngat baris kosongnya:
printf 'GET /index.html HTTP/1.0\r\n\r\n'.
Coba sendiri
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Jaringan dengan Terminal
5HTTP secara Manual
Anatomi PermintaanMetode PermintaanKode StatusHeader ResponsMenulis ResponsRangkuman: Dasar-Dasar HTTPLatihan sendiri: Playground Terminal