ReST Project
ReST API cara mudah dan cepat untuk memberikan fungsionalitas ke sistem yang telah kita buat melalui internet. Website tradisional membuat server side dan client sidenya sendiri. Tapi ReST API hanya mengendalikan bagian servernya saja. Dalam kata lain, bagian backend hanya perlu dibuat sekali, tapi bagian backend dapat dibuat dengan berbagai jenis bentuk dan perangkat. Diataranya
- Website yang kaya akan konten
- Aplikasi mobile
- Server application
Pada project kali ini, kita tidak akan membuat aplikasi, tapi akan menganalisis aplikasi yang telah selesai dibuat.
Aplikasinya mengikuti flow di halaman stackoverflow.com, ada yang bertanya, ada yang menjawab, dan dapat memberi nilai terhadap jawaban. Juga dapat mengubah dan menghapus jawaban.
Mari kita buka aplikasinya, dan perhatikan bagian network di developer console.
Untuk pengenalan, berikut adalah rencana dari aplikasi
Pada aplikasi ini, terdapat Verb dan Noun
Verb | HTTP Verb |
---|---|
Ask | POST |
Read | GET |
Vote | PUT |
Noun | |
---|---|
Questions | |
Answers |
Dengan flow sebagai berikut
Normal | API |
---|---|
Ask a question | Create a question |
Read a question | Read a question |
Answer a question | Create an answer |
Read the answers | Read the answer |
Edit an answer | Update an answer |
Delete an answer | Delete an answer |
Vote on answers | Update an answer |
Maka untuk
Noun | |
---|---|
Question | Create |
Read | |
Answer | Create |
Read | |
Update | |
Delete | |
(Vote) |
Dengan perencanaan route adalah sebagai berikut
GET POST /questions
GET /questions/:qID
POST /questions/:qID/answers
PUT DELETE /questions/:qID/answers/:aID
POST /questions/:qID/answers/:aID/vote-up
POST /questions/:qID/answers/:aID/vote-down