HTTP atau HyperText Transfer Protokol merupakan protokol yang digunakan oleh www untuk mendefinisikan bagaimana suatu pesan dapat diformat dan dikirimkan dari server ke client (dalam transfer dokumen).
sebuah client http seperti web browser biasanya memulai permintaan dengan membuat hubungan TCP/IP ke port tertentu (umumnya port 80). Server HTTP yang mendengar di port itu akan menunggu untuk menerima kode request tersebut. dan server akan memberikan jawanban dalam bentuk OK, Error, atau pesan yang lainnya.
Selain itu HTTP juga mengatur aksi-aksi apa yang harus dilakukan web server atau web browser sebagai jawaban atas perintah-perintah di HTTP.
Sebagai contoh, ketika mengetikkan suatu alamat atau URL pada internet browser, maka sebenarnya web browser akan mengirimkan perintah HTTP ke web server. Web server kemudian akan menerima perintah ini dan melakukan aktivitas sesuai dengan perintah yang diminta oleh web browser (misalnya akses ke database, file, e-mail dan lain sebagainya). Hasil aktivitas tadi akan dikirimkan kembali ke web browser untuk ditampilkan kepada pengguna.
HTTP dipergunakan pertama kali oleh WWW tahu 1990 yaitu HTTP versi 0.9 yang mengirimkan data dalam bentuk mentah tanpa memandang tipe dari file tersebut. dan tahun 1996 HTTP menjadi versi 1.0 yang mengakomodasi tipe dokumen yang hendak dikirim serta enconding yang digunakan. Dan Tahun 1999, menjadi HTTP versi 1.1 yang juga mengakomodasi proxy, chace, dan koneksi dan persisten.
Bagi yang belajar tentang J.E.N.I, saat saya browsing, saya menemukan sedikit tentang HTTP. HTTP Merupakan sebuah protokol jaringan dengan fitur-fitur Web-specific yang berjalan pada bagian teratas dari dua lapisan protokol lain, TCP dan IP. TCP adalah sebuah protokol yang bertanggung jawab memastikan file telah dikirim dari akhir network telah lengkap dikirmkan, berhasil pada tujuannya. IP merupakan sebuah protokol yang mengarahkan (routing) file dari satu host ke host lain pada jalannya untuk tujuan. HTTP mengguanakan dua protokol ini untuk memastikan bahwa permintaan dan respon telah lengkap dikirimkan diantara masing-masing akhir komunikasi. HTTP menggunakan urutan Request/Response: Sebuah HTTP client membuka koneksi dan mengirim sebuah pesan permintaan pada HTTP server; server kemudian mengirimkan pesan respon, biasanya berisikan resource yang diminta. Setelah mengirimkan respon, server menutup koneksi (membuat HTTP menjadi protokol tanpa status, contoh, tidak memelihara beberapa informasi koneksi diantara transaksi).
Format dari pesan permintaan dan respon adalah sama, dan berorientasikan bahasa inggris. Kedua jenis pesan mengandung : • Sebuah garis inisial • Nol atau lebih garis header • Sebuah garis kosong(i.e sebuah CRLF oleh dirinya sendiri), dan pesan body optional (e.g. sebuah file, atau data query, atau keluaran query). HTTP Requests Permintaan-permintaan dari client ke server berisikan informasi tentang macam-macam data yang user inginkan. Salah satu item informasi yang dienkapsulasi pada permintaan HTTP adalah sebuah nama method. Ini memberitahu server macam-macam permintaan yang dibuat, sebagaimana sisa pesan dari client diformat. Ada dua protokol yang mungkin akan Anda gunakan : GET dan POST. GET GET adalah method HTTP paling sederhana dan digunakan sebagian besar untuk meminta resource tertentu dari server, apakah berupa halaman web, file gambar grafis, atau sebuah dokumen, dan lain-lain. GET dapat juga digunakan untuk mengirim data di atas server, meskipun demikian hal itu mempunyai batasan-batasan. Jumlah total karakter yang dapat dienkapsulasi ke dalam permintaan GET adalah terbatas, sehingga untuk situasi dimana banyak data perlu dikirimkan ke server, tidak semua pesan dapat disampaikan. Batasan lain method permintaan GET ketika mengirim data adalah data yang Anda kirim menggunakan method ini ditambahkan pada URL yang Anda kirim ke server. (Untuk sekarang, asumsikan URL sebagai alamat unik yang akan Anda kirim ke server sebagai penandaan lokasi yang Anda minta). Salah satu permasalahannya adalah URL dari beberapa permintaan yang Anda inginkan ditampilkan pada bar browser pada beberapa browser. Hal ini berarti, bahwa beberapa data sensitif seperti password atau informasi kontak (contact information) dapat diterlihat oleh siapapun. Keuntungan dari penggunaan GET dalam pengiriman data di atas server adalah permintaan URL dari permintaan GET dapat dibookmark oleh browser. Hal ini berarti bahwa user dapat dengan mudah membookmark permintaannya dan mengakses setiap saat dari pada melalui proses tiap waktu. Hal ini juga dapat membahayakan; jika bookmark secara fungsional bukan merupakan sesuatu yang Anda inginkan pada user Anda, sebagai gantinya menggunakan method lain.
HTTP Response HTTP merespon dari server yang berisi headers dan body pesan, seperti yang permintaan HTTP lakukan. Mereka menggunakan kumpulan header yang berbeda, meskipun demikian disini kita tidak perlu terlalu dalam membahasnya secara detail. Cukup dengan mengatakan bahwa headers berisi informasi tentang protokol HTTP yang digunakan pada server, sebagaimana tipe dari isi yang dienkapsulasi ke dalam body pesan. Nilai dari tipe isi adalah MIME-type. Ini akan memberitahu browser jika pesan berisi HTML, gambar, atau tipe lainnya.
Taman, sekian dari saya. Semoga bermanfaat...
-resha-