学习笔记《JSend》

在 AJAX 操作的时候,服务器端的数据返回格式是 JSON,但是 JSON 的具体内容呢?是否有一定的标准可以参考呢?其实网上有讨论,选择是比较多的:
http://stackoverflow.com/questions/12806386/standard-json-api-response-format

  • JSON API
  • JSend
  • OData JSON Protocol
  • HAL
  • JSON-RPC 2.0

之所以选择 JSend 是因为他的简单,虽然 HTTP1.1 协议已经被广泛的使用也支持 put delete 等方法,但是本身 HTML 表单的诸多形式限制,让 web 开发依然保持简便的 get post 为核心,未来如何,要看 HTTP2 和 Chrome 的市场占有率能到什么程度了

JSend 属于 OmniTI 这家美国小型公司旗下 OmniTI Labs 中的一个项目,因为其简单够用,所以感觉其制定以后连维护的必要也没有(我也没有找到作者是谁):
https://labs.omniti.com/labs/jsend

JSend 将所有的请求区分为三种不同的状况(status):

  • Success
  • Fail(表单数据验证错误)
  • Error(系统层面的错误)

将返回的一级菜单也仅仅设定为四个:

  • status
  • data
  • message(在 Error 的时候必选使用)
  • code(在 Error 的时候可选使用)

Success:

{
    status : "success",
    data : { "post" : { "id" : 2, "title" : "Another blog post", "body" : "More content" }}
}

Fail:

{
    "status" : "fail",
    "data" : { "title" : "A title is required" }
}

Error:

{
    "status" : "error",
    "message" : "Unable to communicate with database"
}

非常简单

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,253评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,999评论 6 342
  • 原文链接://www.greatytc.com/p/6b816c609669 前传 出于兴趣最近开始研究k...
    悬笔e绝阅读 7,268评论 1 11
  • API定义规范 本规范设计基于如下使用场景: 请求频率不是非常高:如果产品的使用周期内请求频率非常高,建议使用双通...
    有涯逐无涯阅读 2,788评论 0 6
  • 朋友圈好文,点赞转发最多十万加。既能显示传播量,又能遏制攀比、排名、绩效考核等。 十万加。是反的。什么意思??无论...
    北漂廿年阅读 347评论 0 1