–
经过几次接口编写,发下下面的规范比较合适,url和路径没有异议,定义为以下 返回形式有两种: 1、返回http状态码为实际的http_code,body中的code和http_code值相同。 code为200,msg为ok,具体查看data和count字段,data字段可以为list,也可以为dict。 当http_code和body中code为非200,具体错误见msg 当出现错误时:code是400-499中一个数字,代表不同的错误意思 [GIN-debug] GET /api/v1/users/:user_id/tags --> gin-blog/routers/api/v1.GetTags (3 handlers) 列出所有tag的列表 [GIN-debug] GET /api/v1/users/:user_id/tags/:tag_id --> gin-blog/routers/api/v1.GetTags (3 handlers) 列出单个tag详情 [GIN-debug] POST /api/v1/users/:user_id/tags --> gin-blog/routers/api/v1.AddTag (3 handlers) 创建单个tag对象 [GIN-debug] PUT /api/v1/users/:user_id/tags/:tag_id --> gin-blog/routers/api/v1.EditTag (3 handlers) 更新单个tag对象 [GIN-debug] DELETE /api/v1/users/:user_id/tags/:tag_id --> gin-blog/routers/api/v1.DeleteTag (3 handlers) 删除单个tag对象 { "code":200, "data":[ { "id":1, "created_on":0, "modified_on":0, "name":"andy", "created_by":"", "modified_by":"", "state":1 }, { "id":2, "created_on":0, "modified_on":0, "name":"bob", "created_by":"", "modified_by":"", "state":1 } ], "count":16, "msg":"ok" } 当创建成功,没有数据的时候,data为空对象 { "code":200, "data":{}, "msg":"ok" } 参数错误 { "code": 400, "msg": "invalid character '\"' after object key:value pair", "data": {} } 2、body部分没有code字段。 http状态码返回200,msg为ok,具体查看data和count字段,data字段可以为list,也可以为dict。 http状态码返回非200,具体错误见msg [GIN-debug] GET /api/v1/users/:user_id/tags --> gin-blog/routers/api/v1.GetTags (3 handlers) 列出所有tag的列表 [GIN-debug] GET /api/v1/users/:user_id/tags/:tag_id --> gin-blog/routers/api/v1.GetTags (3 handlers) 列出单个tag详情 [GIN-debug] POST /api/v1/users/:user_id/tags --> gin-blog/routers/api/v1.AddTag (3 handlers) 创建单个tag对象 [GIN-debug] PUT /api/v1/users/:user_id/tags/:tag_id --> gin-blog/routers/api/v1.EditTag (3 handlers) 更新单个tag对象 [GIN-debug] DELETE /api/v1/users/:user_id/tags/:tag_id --> gin-blog/routers/api/v1.DeleteTag (3 handlers) 删除单个tag对象 { "data":[ { "id":1, "created_on":0, "modified_on":0, "name":"andy", "created_by":"", "modified_by":"", "state":1 }, { "id":2, "created_on":0, "modified_on":0, "name":"bob", "created_by":"", "modified_by":"", "state":1 } ], "count":16, "msg":"ok" } 更倾向于使用第二种,简单明了,没有多余的东西 然后路径大小写使用下面的,路径使用中横线,参数使用大小写 ttps://oss.console.aliyun.com/ajax/bucket/file/list-objects.json?_cacheBusting=1578312956895&prefix=&marker=&maxKeys=100
–
参考:https://book.eddycjy.com/golang/gin/api-02.html
–
评论前必须登录!
注册