Index | Feature | HTTP Method | Route | Note |
---|---|---|---|---|
1 | 使用者可以回覆特定一則 tweet | POST | POST /api/tweets/:tweet_id/replies | need authentication |
2 | 使用者可以看到特定一則 tweet 的所有回覆 | GET | GET /api/tweets/:tweet_id/replies | need authentication |
HTTP Method : POST
Request Parameters:
Request Name | Type | Required | Example | |
---|---|---|---|---|
推文 id | tweet_id | INTEGER | True | 77 |
Request Body :撰寫回文的表單內的資料
Request Name | Type | Required | Example | |
---|---|---|---|---|
推文回覆內容 | comment | TEXT | True | Elephants can recognizing calls and voices of particular individuals from 1 to 1.5 km away. |
Success Response:
{
"status": "success"
}
Failure Response:
// 若是回覆內容空白
Status Code: 500
{
"status": "error",
"message": "Error: comment field is required."
}
// 若是回覆字數超過140個字
Status Code: 500
{
"status": "error",
"message": "Error: Characters length of comment should be less than 140."
}
// 若是回覆的推文不存在
Status Code: 500
{
"status": "error",
"message": "Error: Target tweet not exist"
}
HTTP Method : GET
Request Parameters:
Request Name | Type | Required | Example | |
---|---|---|---|---|
推文 id | tweet_id | INTEGER | True | 77 |
Request Body :No
Success Response:
[
{
"id": 1234,
"userId": 34,
"tweetId": 311,
"comment": "Reiciendis sint sint laudantium culpa incidunt laborum distinctio ratione aut. Neque et quo. Natus iusto aut fugit molestiae explicabo facer",
"createdAt": "2022-08-03T10:13:22.000Z",
"updatedAt": "2022-08-03T10:13:22.000Z",
"UserId": 34,
"TweetId": 311,
"replyUser": {
"id": 34,
"name": "user9",
"account": "user9",
"avatar": "<https://loremflickr.com/320/240/paris,girl/all>"
},
"tweetUser": {
"id": 26,
"name": "user1",
"account": "user1"
}
},
{
"id": 1235,
"userId": 29,
"tweetId": 311,
"comment": "Aut doloribus nemo magni voluptas soluta temporibus nobis blanditiis. Qui commodi tenetur. Asperiores voluptatibus voluptate. Expedita iusto",
"createdAt": "2022-08-03T10:13:22.000Z",
"updatedAt": "2022-08-03T10:13:22.000Z",
"UserId": 29,
"TweetId": 311,
"replyUser": {
"id": 29,
"name": "user4",
"account": "user4",
"avatar": "<https://loremflickr.com/320/240/paris,girl/all>"
},
"tweetUser": {
"id": 26,
"name": "user1",
"account": "user1"
}
},
{
"id": 1236,
"userId": 28,
"tweetId": 311,
"comment": "Ut reiciendis odio. Atque eos quia veritatis quia amet perferendis qui soluta autem. Quos et cum quo dicta quod molestias.",
"createdAt": "2022-08-03T10:13:22.000Z",
"updatedAt": "2022-08-03T10:13:22.000Z",
"UserId": 28,
"TweetId": 311,
"replyUser": {
"id": 28,
"name": "user3",
"account": "user3",
"avatar": "<https://loremflickr.com/320/240/paris,girl/all>"
},
"tweetUser": {
"id": 26,
"name": "user1",
"account": "user1"
}
}
]
Failure Response:
// 若是推文不存在
Status Code: 500
{
"status": "error",
"message": "Error: Target tweet not exist"
}