如題。
另外,條目的展示是否用 data
包起來比較好,比如:
"status": 200,
"total": 57,
"data" : {
[
"item" : {
"id": 1,
"name" : "name1"
},
...
"item" : {
"id": 999,
"name" : "name999"
}
]
}
API 這種東西設計感覺稍有不嚴謹就會照成很多「歷史問題」。小弟第一次寫 API ,經驗不足,於是參照了一下各大 SNS 的 API ,發現他們混用情況很嚴重,一下用 code 一下用 status 。
就連 stripe 這種把 API 當藝術品在維護的文檔,也有這種現象,而且在 stripe 的 API 中,我還發現兩個新詞 amount
和 total_count
這讓我比較困惑,不知參照誰的標準去定義 API 。
雖然自己隨便選一個單詞來定義即可,但還是想問問大家是怎麼處理,以及有什麼好的範例推薦。
1
Comdex 2015-09-20 21:54:18 +08:00
我用 status 和 count
|
2
zonghua 2015-09-20 21:58:55 +08:00
我受够了,暂时不碰这些软件。
|
3
Lucups 2015-09-20 22:17:46 +08:00
我们现在的结构是:
{ "code": 0, "message": "", "errors": [], "data": [] } message 是一句话友好提示, errors 是详细的错误信息 |
4
Lucups 2015-09-20 22:21:46 +08:00
status 范围太大, code 很明显是个数字,这个叫法应该是从 http status code 来的(注意最后一个单词是 code ),所以如果是数字,我觉得应该用 code , status 给我的感觉是:
status: { code: 001 message: "啦啦啦" } total/count 之类的,全部放在 data 里,都属于数据嘛 |
5
loveuqian 2015-09-20 22:22:38 +08:00 via iPhone
你们后端都用 id 嘛
OC 的 id 都要转一下才能用 |
6
htfy96 2015-09-20 22:27:18 +08:00
totCnt
msg name code C 风格…… |
7
SolidZORO OP @Lucups 嗯,這個方法很好,看來以後分為 `status` 和 `data` 兩大塊是個好辦法。 total 放在 `data` 裡面似乎不適合,但好像放在 `status` 裡面也不是十分適合,但比放 `data` 好一點點⋯⋯
|
9
murusu 2015-09-21 00:28:49 +08:00
分成 status 跟 data
status 返回执行状态 所有返回数据包括错误信息都放到 data 子项中 |
10
loveyu 2015-09-21 09:00:29 +08:00
{
status:bool, code:0, msg:'', data:{} } 我一般这么玩 |
11
julyclyde 2015-09-21 11:32:19 +08:00
据说考虑到域名劫持、 AJAX 客户端的问题,不应该用 HTTP status ,而应该 encode 到内容里去
|