More Related Content
More from Takenori Nakagawa
More from Takenori Nakagawa (13)
後期05
- 9. 仕様
また、以下の3つの API で構成される
・投稿 API
・閲覧 API
・削除 API
送信データは formdata (application/x-www-form-urlencoded)
、レスポンスは JSON でやりとりする。
それぞれの API 仕様を次に示す。
- 10. 仕様 - 投稿 API
Route: /message
Method: POST
RequestBody:
data: 投稿文字列
- 11. 仕様 - 投稿 API
正常系
Status: 200
ResponseBody:
{
“status”: “ok”,
“id”: 投稿 ID
}
- 12. 仕様 - 投稿 API
異常系
RequestBody に誤りがある場合のエラー
例: data が存在しない、 data の中身が空文字の場合
Status: 400
ResponseBody:
{
“status”: “ng”,
“message”: “不正なリクエストです。”
}
- 13. 仕様 - 閲覧 API
Route: /message
Method: GET
- 14. 仕様 - 閲覧 API
正常系
Status: 200
ResponseBody:
{
“status”: “ok”,
“posts”: [{
“id”: 投稿 ID,
“data”: 投稿文字列,
“timestamp”: 投稿日時 (UNIX Time 単位はミリ秒),
“user”: {
“name”: ユーザ名
}
}, {
…
}]
}
- 15. 仕様 - 閲覧 API
異常系
異常系なし。
投稿が一件も無い場合は
ResponseBody:
{
“status”: “ok”,
“posts”: []
}
を返す。
- 16. 仕様 - 削除 API
Route: /message/:id
Method: DELETE
- 17. 仕様 - 投稿 API
正常系
Status: 200
ResponseBody:
{
“status”: “ok”
“id”: 投稿 ID
}
- 18. 仕様 - 閲覧 API
異常系
他人の投稿を消そうとした場合のエラー
Status: 403
ResponseBody:
{
“status”: “ng”,
“message”: “権限がありません。”
}
消そうとした投稿が既に存在しない場合は、正常系と同じレスポンスを返
す。