HTTP singkatan dari “HyperText Transfer Protocol“. 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 bodyoptional (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 tiga protokol yang mungkin akan Anda gunakan : GET, POST, dan PUT.
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.
POST
Jenis lain dari method permintaan yang pasti akan digunakan adalah permintaan POST. Jenis permintaan ini didesain seperti browser dapat membuat permintaan kompleks dari server. Mereka didesain sehingga user, melalui browser, dapat mengirim banyak data ke server. Form kompleks secara umum dicapai dengan menggunakan permintaan POST, sebagaimana form sederhana yang memelukan proses upload file ke server.
Satu perbedaan yang nyata antara method GET dan POST terletak pada cara mengirimkan data ke server. Seperti yang dinyatakan sebelumnya, GET hanya menambahkan data ke URL yang akan mengirim. POST, di sisi lain, mengenkapsulasi atau menyembunyikan data di dalam body pesan (message body) yang dikirim. Ketika server menerima permintaan dan menentukan bahwa itu merupakan sebuah permintaan POST, dapat dilihat dari body pesan data tersebut.
PUT
Berfungsi untuk meng-upload representasi dari sumber tertentu
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.
Tidak ada komentar:
Posting Komentar