HTTP, REST API, JSON
Komunikasi Asynchronous
HTTP
Request
![]() |
Response
Methods
URI
Query Parameters.
Matrix Parameter
Path Parameter.
URI Encoding
Status
Code |
|
Name |
Deskripsi |
1xx |
|
Informational |
|
2xx |
|
Success |
|
|
200 |
OK |
|
3xx |
|
Redirect |
|
|
301 |
Moved Permanently |
|
|
302 |
Moved Temporarily |
|
4xx |
|
Request Error |
|
|
400 |
Bad request |
Request tidak dapat dimengerti oleh server. |
|
403 |
Forbidden |
User tidak memiliki hak untuk melakukan operasi request. |
|
404 |
Not Found |
Resource yang di request pada URi tidak dapat ditemukan. |
|
405 |
Method not allowed |
Metode request tidak diizinkan pada resource tertentu. |
5xx |
|
Server error |
|
|
500 |
Internal server error |
Terjadi kesalahan ada server, request tidak dapat dilakukan. |
|
503 |
Service unavailable |
Server tidak tersedia, biasanya karena overload atau
maintenence |
Header
Body
API
REST
REST APIs harus stateless.
Menentukan User - Siapa yang membuat request ke API ?
Tokens
API Keys
No User Identification.
Bagaimana REST menggunakan URLs
Base URL
URL & Paths
Bagaiana REST meenggunakan metode HTTP
Mengakses data dengan REST API
- URI
- Tentukan data yang akan kita akses.
- daftar item-item.
- base url + nama resource
- Contohnya: www.example.com/products, biasanya ini akan mengembalikan berbagai jenis product.
- daftar item bisa jadi milik entity lainnya,
- Contohnya:
- http://www.example.com/customers/1234/orders/, Akan mengembalikan daftar order untuk customer 1234
- http://www.example.com/customers/1234/orders/123/lineItems, Akan mengembalikan line items untuk order 123 dari customer 1234
- Daftar item yang dicari
- URLnya mirip dengan cotoh yang sebelumnya, ditambah dengan informasi tambahan pada akhir untuk menentuan pencarian.
- informasi tambahan
- kita dapat menambahkan query string atau matrix / path parameter pada akhir url. Contohnya:
- http://www.example.com/products?name=mark
- kita bisa menambahkan ‘/search’ dan kriteria pencarian pada akhir URL. Contohnya:
- http://www.example.com/products/search/name/mark, yang akan mencari products dengan nama mark
- Item tunggal
- URL mirip dengan contoh sebelumnya ditambah slash kemudian identifier untuk mengidentifikasi item tersebut. Contohnya:
- http://www.example.com/products/66543, akan mengembalikan product 66543
- Item tunggal juga bisa menjadi milik entity lainnya, contohnya:
- http://www.example.com/customers/3324/orders/8769, yang akan mengembalikan item tunggal order 8769 untuk customer 3324
- HTTP Method
- kita harus menggunakan metode HTTP GET untuk mengakses data melalui REST API
- HTTP Body
- tidak digunakan
Insert DATA dengan REST API
- URI
- Tentukan data apa yang akan kita masukkan.
- ini akan sama dengan URL sebelumya. Contohnya:
- http://www.example.com/products
- http://www.example.com/customers/33245/orders/
- Atau http://www.example.com/ordres (implementasi terbuka)
- HTTP Method
- Kita harus menggunakan metode HTTP GET untuk memasukkan (menciptakan) data melalui REST API
- HTTP Body
- umumnya kita meletakkan data yang dierlukan untuk dimasukkan kedalam request body.
Update Data dengan REST API
- URI
- Identifikasi data apa yang kita update
- ini akan sama dengan URL sebelumnya untuk mengakses item tunggal. Contohnya:
- http://www.example.com/products/66432
- http://www.example.com/customers/33245/orders/8769
- HTTP Method
- kita menggunakan metode HTTP PUT untuk mengupdate data melalui REST API
- HTTP body
- umumnya kita meletakkan data yang dierlukan untuk dimasukkan kedalam request body.
Menghapus Data dengan REST API
- URI
- Identifikasi data apa yang akan kita hapus
- ini akan sama dengan URL sebelumnya untuk mengakses item tunggal. Contohnya:
- http://www.example.com/products/66432
- http://www.example.com/customers/33245/orders/8769
- HTTP Method
- kita harus menggunakan metode HTTP DELETE untuk menghapus data melalui REST API
- HTTP Body
- tidak digunakan.
JSON
JSON untuk melewatkan data sebagai object.
JSON untuk melewatkan array
JSON untuk melewatkan array dari beberapa objek.

No comments: