Apakah itu Permintaan HTTP?6 min read
Internet terdiri daripada berbilion rangkaian komputer, berkomunikasi antara satu sama lain. Di dalam Internet, pelayar web berkomunikasi dengan pelayan web menggunakan bahasa yang dikenali sebagai protokol HTTP. Protokol ini memberi atur cara untuk pelanggan membuat permintaan dan bagaimana pelayan memberi respons. Sedar atau tidak, anda sedang membaca artikel ini hasil daripada permintaan HTTP yang dibuat daripada palayan web anda ke komputer pelayan kami! Persoalan yang kita ingin jawab kali ini, apakah itu permintaan HTTP?
Apakah itu permintaan HTTP?
Internet memegang banyak sumber yang kita boleh akses daripada pelbagai laman web. Untuk kita mengakses sumber tersebut, pelayar web anda (web browser) perlu membuat permintaan kepada pelayan (server) yang menyimpan sumber tersebut dan memaparkannya di paparan peranti anda. Apakah itu permintaan HTTP? Mesej yang dihantar oleh client (pelayar web anda) kepada pelayan tersebut dinamakan permintaan HTTP. Oleh itu, permintaan HTTP boleh ditakrifkan sebagai sebuah tindakan yang harus dilakukan pada sumber yang dikenalpasti oleh URL permintaan yang diberikan.
Bagaimana permintaan HTTP berfungsi?
Permintaan HTTP merupakan pengantara antara pelanggan (client) dan juga pelayan (server). Pelanggan akan menghantar permintaan HTTP tersebut kepada pelayan dan selepas menghurai mesej tersebut, komputer pelayan akan menghantar balik maklum balas kepada pelanggan. Maklum balas tersebut mempunyai status informasi tentang permintaan yang dilakukan. Terdapat beberapa jenis kaedah yang digunakan untuk membuat permintaan HTTP.
Jenis Kaedah Permintaan HTTP
Kaedah | Fungsi | Huraian |
---|---|---|
GET | Baca sumber | GET digunakan untuk meminta data daripada sumber yang ditentukan oleh pelayan. GET merupakan permintan HTTP yang paling popular. |
HEAD | Baca kepala (header) sumber | HEAD mempunyai ciri yang sama seperti GET, namun tidak mempunyai bahagian badan mesej di dalam balasan oleh pelayan. Keadah ini berguna dalam meminta meta-data yang dituis mengikut kepala sumber, tanpa memindahkan keseluruhan kandungan. |
POST | Tambah ke sumber | Juga merupakan kaedah yang sering digunakan. POST digunakan untuk menghantar data ke pelayan supaya sesebuah sumber di tambah atau kemas kini. Satu contoh adalah apabila anda membalas komen di Facebook. |
PUT | Simpan atau kemas kini ke sumber | Mempunyai ciri yang lebih kurang sama seperti POST. Bezanya, PUT adalah idempoten. Maksudnya, jika anda membuat permintaan ini berulang kali, hasilnya tetap sama. |
DELETE | Buang sumber | DELETE digunakan untuk membuang sumber berdasarkan URL yang ditentukan. |
TRACE | Gema permintaan | Kaedah TRACE membolehkan pelanggan (client) melihat mesej yang diterima di belah pelayan untuk tujuan ujian atau diagnostik. |
CONNECT | Berhubung ke proksi | Kaedah CONNECT digunakan oleh pelanggan untuk membuat sambungan rangkaian ke pelayan web melalui protokol HTTP yang tertentu. Sebagai contoh, terowong SSL. |
Kaedah permintaan HTTP yang sering digunakan: GET vs POST
Kaedah GET
Tahniah kerana anda telah mengakses artikel ini dengan menggunakan kaedah GET! Tidak kira website apa pun, untuk anda mengaksesnya, kaedah GET tidak dapat dielakkan. Kaedah GET membolehkan anda melihat, membaca isi kandungan sesebuah website.
Apabila anda menaip URL www.pakcikengineer.com/about di pelayan web anda, ianya boleh diterjemahkan ke permintaan HTTP berikut:
GET /about HTTP/1.1
Host: pakcikengineer.com
Komputer pelayan akan membalas dengan kod respons beserta fail yang diperlukan untuk memaparkan laman about di pelayan web anda.
Parameter URL
Ingin belajar bagaimana untuk mencari video di Youtube seperti Pro? Mari saya ajar. Sebelum itu, anda harus mempelajari parameter URL di dalam kaedah GET terlebih dahulu.
Maklumat tambahan boleh ditambahkan pada permintaan GET untuk diproses oleh pelayan web. Maklumat ini ditambah sebagai parameter, dibahagian belakang URL. Sintaksisnya sangat mudah:
- Parameter dimulakan dengan tanda soal (“?”)
- Setiap parameter dinamakan dan juga menerima nilai tertentu seperti: (“Nama=nilai”)
- Jika terdapat beberapa parameter untuk dimasukkan, mereka disambungkan menggunakan simbol ampersan (“&”)
Ayuh kita cuba menggunakan contoh mencari video berkaitan kejuruteraan di Youtube. Anda boleh cuba taip baris tersebut di pelayar web:
youtube.com/results?search_query=kejuruteraan
Di Youtube, hasil carian dipersebahkan di laman bernama “results”. Oleh itu URL berkenaan ialah youtube.com/results. Carian kata kunci kejuruteraan dimasukkan ke dalam parameter bernama “search_query” dan mempunyai apa-apa nilai yang anda mahukan. Contoh di sini ialah: “kejuruteraan”. Parameter dimulakan dengan simbol “?”. Oleh itu, kesuluruhan parameter tersebut ialah: ?search_query=kejuruteraan.
Permintaan HTTP yang terhasil daripada carian anda ialah:
GET /results?search_query=kejuruteraan HTTP/1.1
Host: www.youtube.com
Kaedah POST
Jika anda ingin menghantar sejumlah data yang besar seperti gambar atau data yang sensitif dengan komputer pelayan, kaedah GET tidak sesuai digunakan kerana data tersebut akan ditulis di dalam bar alamat pelayar web anda tanpa penyulitan.
Dalam hal ini, kaedah POST lebih bersesuaian. Kaedah ini tidak menulis parameter ke URL, namun menambahnya di dalam kepala HTTP (HTTP header).
Contoh penggunaan kaedah POST ialah, jika anda memberi komen di ruangan komen di bawah, anda telah membuat kaedah POST untuk menambah sesuatu di sumber URL ini. Contoh yang lain ialah apabila anda memuat naik gambar dan status di Facebook atau Twitter anda. Anda telah membuat kaedah permintaan HTTP POST untuk meambah sesuatu pada URL profile Facebook dan Twitter anda. Contoh lain yang penting dalam kehidupan seharian kita ialah dalam perbankan atas talian. Apabila anda membuat transaksi, sebuah rekod akan di tambah menggunakan kaedah POST di dalam akaun perbankan atas talian anda.
Contoh mesej yang dihantar di dalam kaedah POST. Di sini, parameter dihantar di dalam kepala (header) mesej, seperti yang dinyatakan “field1=value1&field2=value2”
POST /test HTTP/1.1
Host: foo.example
Content-Type: application/x-www-form-urlencoded
Content-Length: 27
field1=value1&field2=value2
Eksperimen dengan permintaan HTTP
Salah satu cara untuk anda membuat permintaan HTTP GET adalah menggunakan pelayar web (browser) anda untuk ke sesuatu website, contohnya www.pakcikengineer.com. Namun, menggunakan cara ini, anda tidak dapat melihat mesej yang dihantar disebalik permintaan GET tersebut. Terdapat beberapa cara dan alat yang boleh digunakan untuk membuat simulasi permintaan HTTP dan melihat apakah mesej yang dihantar dan juga maklum balas yang diberi oleh komputer pelayan.
Alat yang saya gemar gunakan ialah POSTMAN. Namun, ia memerlukan anda untuk memuat turun perisian POSTMAN ke dalam komputer anda. Alat ini penting jika anda sedang membangunkan aplikasi web atau perisian projek IoT anda yang menggunakan permintaan HTTP. Saya menggunakan perisian ini untuk membangunkan projek universiti saya yang memerlukan saya untuk membuat permintaan HTTP ke Fitbit API. Untuk aktiviti kita kali ini, kita akan menggunakan alat yang ada atas talian (online) iaitu reqbin.com.
Anda boleh cuba masukkan laman yang selalu anda lawati atau mana-mana laman kegemaran anda untuk melihat permintaan HTTP dan respons yang diberikan di sebaliknya.
Rujukan
https://rapidapi.com/blog/api-glossary/http-request-methods/
https://www.ionos.co.uk/digitalguide/hosting/technical-matters/http-request/
1 thought on “Apakah itu Permintaan HTTP?6 min read”