Kaedah permintaan HTTP diterangkan
HTTP mentakrifkan sembilan kaedah permintaan standard, tetapi kebanyakan trafik harian hanya menggunakan sebahagian kecil daripadanya. Jadual ini menerangkan setiap kaedah, sama ada selamat dan idempoten, serta kod yang dipulangkan oleh panggilan berjaya.
| Kaedah | Tujuan | Selamat? | Idempoten? | Status kejayaan |
|---|---|---|---|---|
| GET | Retrieve a resource | Yes | Yes | 200 OK |
| HEAD | Retrieve headers only, no body | Yes | Yes | 200 OK |
| POST | Create a resource or trigger an action | No | No | 201 Created |
| PUT | Replace a resource entirely | No | Yes | 200 OK / 204 No Content |
| PATCH | Apply a partial update | No | No | 200 OK |
| DELETE | Remove a resource | No | Yes | 200 OK / 204 No Content |
| OPTIONS | CORS preflight; list allowed methods | Yes | Yes | 204 / 200 OK |
| TRACE | Echo the request back for diagnostics | Yes | Yes | 200 OK |
| CONNECT | Open a tunnel, e.g. HTTPS via a proxy | No | No | 200 OK |
Nota
- Selamat bermaksud kaedah tidak pernah mengubah keadaan pelayan: hanya GET, HEAD, OPTIONS dan TRACE yang selamat.
- Idempoten bermaksud mengulang panggilan memberikan hasil yang sama seperti satu panggilan: PUT, DELETE dan GET layak; POST dan PATCH tidak.
- Apabila laluan tidak menerima kaedah tertentu, pelayan membalas 405 Method Not Allowed dan biasanya menyertakan header Allow.
Soalan lazim
- Apakah perbezaan antara GET dan POST?
- GET mendapatkan sumber tanpa kesan sampingan dan boleh diulang dengan selamat; parameter bergerak dalam URL. POST mencipta sesuatu atau mencetuskan tindakan, boleh mengubah keadaan, dan tidak patut diulang tanpa berfikir.
- Apakah maksud kaedah HTTP yang selamat?
- Kaedah selamat tidak pernah mengubah keadaan pelayan, jadi ia boleh dipanggil tanpa risiko. GET, HEAD, OPTIONS dan TRACE selamat; POST, PUT, PATCH dan DELETE tidak.
- Apakah perbezaan antara PUT dan PATCH?
- PUT menggantikan keseluruhan sumber dengan apa yang anda hantar; PATCH hanya mengubah sebahagian pada medan terpilih. PUT idempoten, mengulanginya memberi hasil yang sama; PATCH biasanya tidak.
- Apakah fungsi kaedah HEAD?
- HEAD bertindak seperti GET tetapi tidak memulangkan badan respons. Ia berguna untuk menyemak kewujudan sumber, saiz atau headernya, tanpa memuat turun keseluruhan kandungan.