HTTP (HyperText Transfer Protocol) adalah protokol komunikasi yang digunakan untuk mengirim dan menerima data antara client (biasanya web browser) dan server di jaringan internet atau intranet. HTTP menjadi dasar utama cara kerja website.
1. Fungsi Utama HTTP
HTTP berfungsi untuk:
- Mengambil halaman web dari server
- Mengirim data dari pengguna ke server
- Menjadi aturan komunikasi antara browser dan server
- Menyampaikan berbagai jenis data (teks, gambar, video, file, API)
2. Cara Kerja HTTP
HTTP bekerja dengan model client–server:
- Client (Browser) mengirim permintaan (request) ke server
Contoh: membuka http://example.com - Server memproses permintaan tersebut
- Server mengirimkan respons (response) berupa data ke client
- Browser menampilkan hasilnya kepada pengguna
Setiap komunikasi HTTP bersifat stateless, artinya :
- Server tidak menyimpan informasi sesi secara otomatis
- Setiap request berdiri sendiri
3. Struktur HTTP
a. HTTP Request
Berisi:
- Method (GET, POST, dll)
- URL
- Header
- Body (opsional)
Contoh :
GET /index.html HTTP/1.1
Host: example.com
b. HTTP Response
Berisi:
- Status Code
- Header
- Body (isi data)
Contoh :
HTTP/1.1 200 OK
Content-Type: text/html
4. HTTP Method (Perintah HTTP)
Beberapa method utama:
- GET → mengambil data
- POST → mengirim data
- PUT → memperbarui data
- DELETE → menghapus data
- HEAD → mengambil header saja
- OPTIONS → melihat metode yang didukung
5. HTTP Status Code
Kode status menunjukkan hasil permintaan:
- 1xx → Informasi
- 2xx → Berhasil
Contoh: 200 OK - 3xx → Redirect
Contoh: 301 Moved Permanently - 4xx → Kesalahan client
Contoh: 404 Not Found - 5xx → Kesalahan server
Contoh: 500 Internal Server Error
6. HTTP Header
Header berisi informasi tambahan, seperti:
- Jenis data
- Cookie
- Informasi browser
- Bahasa
- Cache
Contoh header:
- Content-Type
- User-Agent
- Authorization
- Cookie
7. HTTP vs HTTPS
| HTTP | HTTPS |
| Tidak terenkripsi | Terenkripsi (SSL/TLS) |
| Rentan disadap | Aman |
| Port 80 | Port 443 |
| Tidak aman untuk data sensitif | Aman untuk login & transaksi |
Saat ini, HTTPS adalah standar wajib untuk website modern.
8. Contoh Penggunaan HTTP
- Membuka website
- Login akun
- Mengirim formulir
- Mengakses API
- Download & upload file
9. Kelebihan dan Kekurangan HTTP
Kelebihan :
- Sederhana dan cepat
- Mudah diimplementasikan
- Mendukung berbagai jenis data
Kekurangan :
- Tidak aman (tanpa HTTPS)
- Stateless (butuh cookie/session tambahan)
10. Kesimpulan
HTTP adalah pondasi utama komunikasi web, yang memungkinkan browser dan server saling bertukar data. Tanpa HTTP/HTTPS, website tidak dapat diakses.