Apa itu HTTP Header
- Informasi tambahan yang bisa dikirim oleh client atau server
- Informasi yang tidak ada hubungannya dengan data yang kita butuhkan dalam memanggil API, sebaiknya disimpan di HTTP Header, misal : mobile application version, request token
- HTTP Header bisa dibuat dengan standard sendiri, tapi biasanya orang akan mengikuti standard yang sudah ada
Standard HTTP Header
HTTP Header : Accept
- HTTP Header yang digunakan client untuk memberi tahu format data apa yang diinginkan, misal : application/json, application/xml
- Apabila server tidak bisa mengembalikan dalam format yang diinginkan, maka server akan menolak request
- tidak direkomendasikan menggunakan url extension sebagai format data, misal : /api/products.json, /api/products.xml
- Contoh Accept yang populer adalah : application/json, application/xml, text/plain
HTTP Header : Content-Type
- HTTP Header yang digunakan oleh client untuk memberi tahu data yang dikirim oleh client dalam format apa
- server bisa menolak request dari client jika Content-Type tersebut tidak didukung oleh server
- Content-Type juga bisa digunakan oleh server untuk memberi tahu bahwa response data yang dikembalikan oleh client dalam format apa
- Contoh Content-Type yang populer adalah : application/json, application/xml, text/plain
HTTP Header : Accept-Language
- digunakan oleh client untuk memberi tahu bahwa client menginginkan response dengan bahasa tertentu
- Biasanya jika di browser, Accept-Language akan mengikuti language sistem operasi atau aplikasi browsernya
- Contoh nilai Accept-Language : en-US, in-ID, dll
Contoh Standard yang lain bisa dicek di : https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers
Pakai HTTP Header yang standard dulu, kalau tidak ada silahkan buat HTTP Header custom