Pertemuan 7 HTTP Request and Response

Pertemuan 7 HTTP Request and Response

HTTP-icon

HTTP merupakan protokol atau media atau jalur komunikasi pada teknologi web antara client dan server yang digunakan untuk menangani request dan response.

HTTP dibagi menjadi 2 bagian, yaitu :

  1. HTTP Request

    HTTP Request dikirimkan ke server pada saat user melakukan permintaan melalui web browser seperti Mozilla Firefox, Internet Explorer, Google Chrome dan lain-lain.

HTTP Request dapat dilakukan melalui 2 metode, antara lain :
– Method GET ( Menampilkan data-data yang diinput oleh user pada URL )
– Method POST ( Menyembunyikan value yang diinputkan oleh user pada URL )

Ketika user melakukan inputan data pada browser, tidak hanya data-data yang terdapat pada form yang dikirimkan ke server. Tetapi terdapat beberapa record data yang dikirimkan ke server yang dikelompokkan dalam HTTP Request Header.
Berikut contoh HTTP Request Header :HTTP Request
Beberapa penjelasan mengenai HTTP Request Header :

  1. GET : metode pengiriman request data yang digunakan.
  2. HTTP/1.1 : Versi Protokol HTTP yang digunakan.
  3. Connection : Koneksi yang dilakukan oleh client, di sana tertera “Keep-Alive” yang berarti masih tetap terhubung ke server.
  4. User Agent : Berhubungan dengan data yang dimiliki oleh pengguna seperti informasi browser yang digunakan dan Operating System yang dipakai oleh user pada perangkat.
  5. Host : URL yang diakses, contoh => id.wikipedia.org, localhost:8080
  6. Accept : Tipe content yang tersedia untuk response. Kita ambil contoh diatas, tipe content yang tersedia yaitu gambar berupa gif, bitmap-x, jpg dan * ( semua tipe data )
  7. Accept-Encoding : Encoding yang dapat diterima, seperti gzip, deflate dan lain-lain
  8. Accept-Language : Bahasa yang digunakan client dan diperlukan untuk response. Contoh -> en ( English )
  9. Accept-Charset : Charset yang digunakan untuk response. Contoh : utf-8, iso-8859-1

2. HTTP Response

HTTP Response dikirimkan ke client pada saat server merespon permintaan dari client. Sama    halnya dengan HTTP Request Header, tidak hanya berupa data yang direquest client yang ditampilkan ke browser. Ada beberapa record data yang tersimpan di HTTP Response Header.
Berikut contoh HTTP Response Header :
HTTP Response
Beberapa penjelasan mengenai HTTP Response Header :

  1. HTTP/1.1 200 OK : Versi protokol HTTP yang digunakan adalah 1.1, dan Status code yang dihasilkan adalah 200 yang berarti Sukses
  2. Date : Tanggal dan waktu dimana response diberikan
  3. Server : Nama server. Contoh : Apache/1.3.29
  4. Last-Modified : Tanggal perubahan terakhir isi content yang dilakukan server
  5. ETag : Sebuah identifier untuk versi yang lebih spesifik dari resource, berbentuk seperti message digest
  6. Accept-Ranges : Satuan yang digunakan oleh server dalam isi content. Contoh : Bytes
  7. Content-Length : Panjang isi content response dalam octet ( 8-bit bytes )
  8. Connection : Opsi control untuk koneksi yang sedang berlangsung
  9. Content-Type : Tipe MIME (Multipurpose Internet Mail Extensions ) dari isi content.
    Contoh : text/html

Berbicara tentang Status Code, disini terdapat beberapa HTTP Response Status Code yang biasanya kita temui, yaitu :

  • 200 ( OK / Successful / Request Berhasil )
    Server berhasil memproses permintaan/request dari client, yang berarti sukses terhubung ke halaman web. Biasanya kode ini tidak tampak oleh client dan langsung menampilkan halaman web yang diminta.
  • 404 ( Not Found / Tidak Ditemukan )
    Server tidak menemukan halaman web yang diminta. Biasanya saya menemukan status kode ini ketika melaksanakan proses perkuliahan pemrograman web. Kesalahannya terdapat pada action = “….” dalam tag <form action=”…..”> di file HTML.
  • 500 ( Internal Server Error )
    Server mengalami error dan tidak dapat memenuhi permintaan client. Biasanya kesalahan ini terjadi pada servlet. Mungkin coding yang anda buat dalam servlet mengalami error ata kesalahan pengetikan.
  • 503 ( Service Unavailable )
    Server saat ini tidak tersedia, dikarenakan overload atau dalam proses maintenance. Status ini bersifat temporary/sementara.

Berikut beberapa Daftar Status HTTP Response Kode, yang tergolong sebagai berikut :

  • 1xx ( Provisional Response )
    Status Kode yang bersifat sementara saja, meminta user untuk mengambil tindakan selanjutnya.
    Contoh :
    – 100 ( Continue )
    – 101 ( Switching Protocols / Permintaan untuk beralih protokol )
  • 2xx ( Success )
    Status Kode dimana server telah berhasil memproses request.
    Contoh :
    – 200 ( Success )
    – 201 ( Created / Server membuat resource baru )
    – 202 ( Accepted / Server telah menerima request, tetapi belum diproses )
    – 204 ( No Content / Server berhasil memproses request, tapi tidak ada konten )
  • 3xx ( Redirected )
    Status kode ini meminta user untuk melakukan pengalihan URL.
    Contoh :
    – 300 ( Multiple Choices / User memilih beberapa pilihan yang dibuat server )
    – 305 ( Use Proxy / Hanya dapat mengakses halaman dengan proxy )
  • 4xx ( Request Error / Client Error )
    Status kode dimana kemungkinan terjadi kesalahan dalam request dan mencegah server untuk memprosesnya.
    Contoh :
    – 400 ( Bad Request / Server tidak memahami request karena kesalahan sintaks )
    – 401 ( Unauthorized / Memerlukan otentifikasi ( page behind login )
    – 403 ( Forbidden / User dilarang mengakses halaman web tersebut )
    – 404 ( Not Found )
    – 408 ( Request Time Out / Server kehabisan waktu menunggu request )
  • 5xx ( Server Error )
    Status kode ini menandakan bahwa terjadi kesalahan pada server sendiri pada saat memproses request/permintaan, bukan kesalahan pada request.
    Contoh :
    – 500 ( Internal Server Error )
    – 505 ( HTTP version not Supported )

 

Referensi yang mendukung :

https://en.wikipedia.org/wiki/List_of_HTTP_header_fields

http://fandyzhuo.blog.pcr.ac.id/pertemuan-3-pemrograman-web-j2ee-dan-konsep-client-server/

http://www.tutorialspoint.com/http/http_responses.htm

,