yadakhov / okdata
OkData json api 规范的包装类。
v1.0
2016-08-01 21:39 UTC
Requires (Dev)
- phpunit/phpunit: ~5.0
This package is auto-updated.
Last update: 2024-09-21 20:20:44 UTC
README
OkData 受到 jsend api 响应规范的启发。
规范制定的动机是拥有类似以下外观的 json api 响应:
{ "ok" : true, "data" : { "id" : 1 } }
关于两个键的说明: ok 和 data,因此规范被称为 OkData。
每种类型的必需和可选键
示例响应类型
GET /posts.json
{ "ok" : true, "data" : { "posts" : [ { "id" : 1, "title" : "A blog post", "body" : "Some useful content" }, { "id" : 2, "title" : "Another blog post", "body" : "More content" }, ] } }
GET /posts/2.json
{ "ok" : true, "data" : { "post" : { "id" : 2, "title" : "Another blog post", "body" : "More content" }} }
DELETE /posts/2.json
{ "ok" : true, "data" : null }
必需键
- ok: 应始终设置为 true
- data: 作为 API 调用返回的任何数据的包装器。如果调用返回无数据(如最后一个示例所示),则应将 data 设置为 null。
错误
当 API 调用因服务器上的错误而失败时。例如
GET /posts.json
{ "ok" : false, "error" : "Unable to communicate with database" }
必需键
- ok: 应始终设置为 false。
- error: 一个有意义、面向最终用户的(或至少值得记录的)消息,解释出了什么问题。
可选键
- data: 用于任何关于错误的其它信息的通用容器,例如导致错误的条件、堆栈跟踪等。
OkData 和 JSend 之间的区别是什么?
OkData 使用布尔状态 ok。JSend 使用三种状态:成功、失败和错误。在我的经验中,我们只使用成功和错误。
布尔 ok 状态也使得检查变得更容易。 if (json.ok) { }