Anda di halaman 1dari 5

6/21/22, 9:08 PM (Berkenalan dengan HTTP)

(Berkenalan dengan HTTP)


Referensi:

• https://developer.mozilla.org/

Hypertext Transfer Protocol atau HTTP adalah sebuah protokol yang digunakan untuk
melakukan transfer data. Data yang ditransfer bisa dalam bentuk teks, HTML, gambar
dan lain sebagainya. HTTP merupakan pondasi dalam melakukan transfer data pada
sebuah Web. HTTP mengunakan sebuah protokol request-response, yang artinya sebuah
request diinisiasi sebuah client ke sebuah server. Kemudian, server akan mengembalikan
sebuah response ke client.
Client dan server berkomunikasi melalui sebuah URL, atau bisa juga menggunakan
alamat IP. Dalam kasus ini sebuah server akan memiliki sebuah URL atau alamat IP,
yang dapat digunakan untuk melakukan transfer data. Jika Anda belum familiar dengan
URL dan alamat IP, Anda bisa membaca kembali artikel sebelumnya.

HTTP mempunyai beberapa cara untuk berkomunikasi, biasanya disebut dengan HTTP
request methods. HTTP request methods menunjukkan aksi tertentu untuk melakukan
transfer data. Beberapa HTTP request methods yang sering digunakan adalah:
1. GET - digunakan untuk mengambil data dari server
2. POST - digunakan untuk mengirim data ke server
3. PUT / PATCH - digunakan untuk mengubah data di server. PUT digunakan untuk
mengubah seluruh bagian dari sebuah data , PACTH digunakan untuk mengubah
beberapa bagian saja.
4. DELETE - digunakan untuk menghapus data di server

https://www.notion.so/Berkenalan-dengan-HTTP-e74e1f503b764a928007575cf37796dd 1/5
6/21/22, 9:08 PM (Berkenalan dengan HTTP)

Contoh dari sebuah transfer data adalah ketika kita memasukkan alamat google.com di
sebuah browser. HTTP request methods yang digunakan pada sebuah browser adalah
GET , sehingga request yang dikirimkan ke server google adalah GET
https://google.com . Kemudian server google akan mengembalikan sebuah response
berupa halaman HTML, yang akan muncuk di dalam browser yang kita gunakan.

HTTP Messages
Ada 2 macam data yang dikirim di HTTP, yaitu request dan response. Request adalah
sebuah data yang dikirim dari sebuah client ke server. Sebuah request akan memicu
sebuah aksi di server, dan server akan melakukan sebuah pemrosesan atas data yang
dikirim. Sedangkan response adalah hasil dari sebuah proses yang dilakukan oleh server.
Hasil tersebut akan dikirimkan kembali ke client.
Data yang dikirim melalui HTTP biasanya disimpan dalam sebuah body , baik untuk
request ataupun response. Data yang dikirim dari client ke server akan berada di dalam
request body, sedangkan data yang dikirim dari server ke client akan berada di dalam
response body.
Selain itu, dengan protokol HTTP, client dan server juga bisa mengirimkan informasi
tambahan yang disimpan dalam sebuhan headers . Baik request dan response bisa
memiliki headers. Request headers biasanya berisi tentang informasi terkait sebuah
client, seperti perangkat yang digunakan. Sedangan response headers berisi tentang
informasi dari sebuah server.

https://www.notion.so/Berkenalan-dengan-HTTP-e74e1f503b764a928007575cf37796dd 2/5
6/21/22, 9:08 PM (Berkenalan dengan HTTP)

Dalam sebuah HTTP response, biasanya terdapat sebuah status code. Status code adalah
sebuah angka yang menandakan apakah sebuah response berhasil atau tidak. Ada
beberapa kelompok status code:

• 1xx - mengindikasikan bahwa sebuah request dari client masih diproses di server
karena sesuatu hal.

• 2xx - mengindikasikan bahwa diterima dan berhasil diproses.

• 3xx - mengindikasikan sebuah redirect, atau diarahkan ke alamat lain.

• 4xx - mengindikasikan bahwa terdapat error di sisi client, misalnya client


mengirimkan format data yang salah atau client tidak mempunyai hak akses untuk
melakukan komunikasi dengan server.

• 5xx - mengindikasikan bahwa terdapat error di sisi server, yang membuat sebuah
request tidak dapat diproses dengan benar.
Untuk mengetahui seluruh status code yang bisa kita gunakan, Anda bisa membaca
artikel ini.

Stateless dan Cookie


HTTP merupakan sebuah protokol stateless. Artinya adalah protokol HTTP tidak
menyimpan informasi apapun dari request yang telah diajalankan. Jika dibandingkan
dengan protokol stateful, protokol stateful akan menyimpan data dari request lain yang
dijalankan sebelumnya.

https://www.notion.so/Berkenalan-dengan-HTTP-e74e1f503b764a928007575cf37796dd 3/5
6/21/22, 9:08 PM (Berkenalan dengan HTTP)

Mungkin Anda akan mempunyai pertanyaan, bagaimana sebuah Web menyimpan data
dari beberapa halaman yang berbeda. Misalnya ketika kita menambahkan sebuah
produk di halaman e-commerce, dan bagaimana data tersebut masih ada ketika kita
beralih ke halaman checkout.
Walaupun protokol HTTP adalah sebuah protokol stateless, kita dapat menggunakan
HTTP cookie untuk menerapkan konsep statefull session untuk menyimpan data dari
request lain dan digunakan kembali di request selanjutnya.
HTTP cookie adalah data yang disimpan di sisi client. Cookie merupakan bagian dari
response yang dikirim oleh server ke client. Sebuah browser dapat menyimpan informasi
tersebut dan menggunakannya kembali pada request lain. Contoh penggunaan HTTP
cookie adalah untuk menunjukkan bahwa 2 buah request berasal dari sebuah browser
yang sama, atau menunjukkan bahwa 2 buah request berasal dari pengguna yang sama.
Biasanya cookie digunakan untuk hal-hal berikut:

• Session management

Session merupakan data yang disimpan disisi server, yang berfungsi untuk
mengingat sebuah informasi. Misalnya untuk mengetahui pengguna yang sedang
login, barang-barang yang ada di keranjang belanja sebuah e-commerce, atau
menyimpan sebuah score. Anda akan belajar lebih lanjut terkait session
management di kelas Node.js V yang bisa Anda akses disini, atau membaca
dokumentasi terkait "Advanced Web Applications" disini.

• Personalisasi
Cookie juga bisa digunakan untuk menyimpan sebuah user preferences, tema, dan
pengaturan lainnya.

• Tracking

Cookie juga bisa digunakan untuk merekam data dan menganalisa perilaku
pengguna.

https://www.notion.so/Berkenalan-dengan-HTTP-e74e1f503b764a928007575cf37796dd 4/5
6/21/22, 9:08 PM (Berkenalan dengan HTTP)

https://www.notion.so/Berkenalan-dengan-HTTP-e74e1f503b764a928007575cf37796dd 5/5

Anda mungkin juga menyukai