`

JSON API:用 JSON 构建 API 的标准指南中文版

 
阅读更多

译文地址:https://github.com/justjavac/json-api-zh_CN

如果你和你的团队曾经争论过使用什么方式构建合理 JSON 响应格式, 那么 JSON API 就是你的 anti-bikeshedding 武器。

通过遵循共同的约定,可以提高开发效率,利用更普遍的工具,可以是你更加专注于开发重点:你的程序。

基于 JSON API 的客户端还能够充分利用缓存,以提升性能,有时甚至可以完全不需要网络请求。

下面是一个使用 JSON API 发送响应(response)的示例:

{
  "links": {
    "posts.author": {
      "href": "http://example.com/people/{posts.author}",
      "type": "people"
    },
    "posts.comments": {
      "href": "http://example.com/comments/{posts.comments}",
      "type": "comments"
    }
  },
  "posts": [{
    "id": "1",
    "title": "Rails is Omakase",
    "links": {
      "author": "9",
      "comments": [ "5", "12", "17", "20" ]
    }
  }]
}
 

顶级的 "links" 部分是可选的。 除去 "links" 部分,此响应看起来非常接近使用已经存在的 API 构建的响应。

JSON API 不仅可以用来构建响应,还包括创建和更新资源。

现状

本文档是一个正在进展的工作,在具体实现过程中将会有所改变。详细信息请查看现状页面。

MIME 类型

JSON API 已经在 IANA 机构完成注册。 它的 MIME 类型是 application/vnd.api+json

格式

在开始使用 JSON API 前,先查看一下JSON API 格式文档

更新历史

  • 2013-05-03:最初版本的草案。
  • 2013-07-22:媒体类型在 IANA 注册完成。

 

你可以使用 RSS 阅读器在这里订阅本提要的变更。

1
1
分享到:
评论

相关推荐

    用 JSON 构建 API 的标准指南

    JSONAPI是一种用于构建API的标准,它旨在减少客户端与服务器之间的通信次数及数据传输量,同时保持良好的可读性和灵活性。对于那些在团队内部对JSON响应格式有过争议的人来说,JSONAPI提供了一种共识性的解决方案。...

    PyPI 官网下载 | SQLAlchemy-JSONAPI-4.0.4.tar.gz

    SQLAlchemy-JSONAPI 是一个基于 Python 的 ORM 框架 SQLAlchemy 的扩展库,它使得在 SQLAlchemy 上使用 JSONAPI 标准来处理数据变得更加容易。JSONAPI 是一种规范,用于构建可消费和可产生 JSON 数据的 API,特别是...

    json-api-zh_CN:使用JSON构建API的标准指南

    JSON API:用JSON构建API的标准指南中文版 本项目是网站的源码。 英文官方网址: : 。 资源 IRC频道:freenode.net上的#jsonapi 推特:@jsonapi 翻译 现状 本标准是当前正在开发中。如需贡献: 获取所有依赖: $ ...

    JSON API Document

    JSON API则是一种基于HTTP协议的RESTful接口设计规范,主要用于构建API,使得客户端和服务器之间的通信更为高效和标准化。 1. **资源(Resources)**:在JSON API中,数据以资源的形式存在。每个资源都是一个JSON...

    JSON API.chm

    JSON API 的目标是提供一个规范,确保开发者在构建API时可以遵循一致的模式,从而提高开发效率和用户体验。 首先,我们来详细了解一下JSON API 的核心概念: 1. **资源(Resources)**:JSON API 中的数据以资源的...

    json中文版API

    在JSON API的中文版中,开发者可以找到关于如何使用JSON进行数据交互的详细指南。JSON API通常用于Web服务,允许客户端(如浏览器中的JavaScript)与服务器进行通信,获取或提交数据。例如,`ajax(API)`是异步...

    jsonapi4j,.zip

    JSONAPI是一种标准,用于构建RESTful API,它强调数据的结构化和一致性,使得客户端和服务器之间的交互更加清晰和高效。这个压缩包中的"jsonapi4j-master"可能包含了项目的源代码、文档和其他相关资源。 JSONAPI...

    sandbox-lotus-json-api:了解如何使用Lotus框架构建JSON API的工具

    从标签"Ruby"我们可以推断,整个项目是用Ruby编程语言编写的,这意味着我们将使用Ruby的语法和特性来构建API。 在压缩包的文件名列表中,我们看到了"sandbox-lotus-json-api-master",这可能表示这是项目源代码的主...

    VB6解析json类库

    7. **VB JSON VB6 Software Library (BSD Licensed)** - **Visual Basic, JSON.mht**:这是一个MHTML文件,包含了类库的详细文档,很可能包括了使用指南、API参考和许可信息。 8. **VBJSON.vbp** 和 **VBJSON.vbw**...

    redux-json-api:Redux动作,动作创建者和还原器使JSON API的生活变得轻而易举

    -Redux JSON API 2的最低实现的快速入门指南 了解有关和核心原则的信息。 阅读有关JSON API的规范。 有助于 有任何意见或建议吗? 查看我们的。 贡献者 用 :purple_heart: 来自哥本哈根和。 最初由创业公司伪造。

    jsoncpp-1.4.0.7z

    3. **文档**:可能包括README文件、API文档或用户指南,提供了关于如何安装、配置和使用JSONCPP的详细说明。 4. **测试代码**:为了确保库的正确性,开发者通常会提供测试用例。这有助于验证库的功能,并且可以帮助...

    JSON-c语言开发指南

    开发人员可以通过这些API轻松地在C程序中构建、读取和修改JSON数据,实现数据交换和存储。 在使用`json-c`库时,要注意版本兼容性,例如在这个指南中提到的是`json-c-0.8`版本。随着库的更新,新的功能和API可能会...

    json转换jsonschema

    在实际应用中,开发者可以使用这样的工具或库,通过简单的API调用来实现JSON到JSON Schema的转换,从而提高数据处理的可靠性和安全性。例如,如果你正在开发一个Web应用,你可以先将用户提交的JSON数据转换为JSON ...

    Windows下编译和JSONCPP的使用入门

    ### Windows下编译和使用JSONCPP的详尽指南 #### 一、简介 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript的一个子集,但独立于...

    json-c 一个用于c语言的json解析库,很强大

    2. **JSON对象模型**:`json-c`使用哈希表来表示JSON对象,用链表表示JSON数组,这种设计既保持了JSON的结构,又便于C语言操作。 3. **动态类型系统**:JSON-c库允许JSON对象中的值是动态的,可以是整数、浮点数、...

    json-c-0.3.tar.gz_JSON_json linux_json-c_linux json

    使用JSON-C库时,首先需要在项目中包含头文件`#include <json/json.h>`,然后利用库提供的API,如`json_object_new_string()`创建一个JSON字符串,`json_object_get_string()`获取JSON对象中的字符串值,等等。...

    OpenAPI 3.0 规范-食用指南.doc

    OpenAPI 3.0 规范-食用指南 OpenAPI 3.0 规范是当前最流行的 API 描述语言,它提供了一种标准化的方式来描述 ...OpenAPI 3.0 规范提供了一种标准化的方式来描述 RESTful API,帮助开发者快速构建高质量的 API 文档。

    jdbi-guide:了解如何使用JDBI构建JSON API和持久化数据

    在本指南中,您将学习如何为Pets构建JSON API ,以及如何使用模块将它们持久保存到关系数据库中。 是用于JavaSQL便捷库。 它尝试使用集合,Bean等在惯用Java中公开关系数据库访问,同时保持与JDBC相同的详细程度。 ...

    BP-API:用于BuddyPress的RESTful API。 这个插件为https创建json api端点

    - `README.md`:项目的基本介绍和使用指南。 - `bp-api.php`:插件的主文件,包含了初始化和注册 API 路由的代码。 - `includes/`:包含各个功能的子文件,如用户、活动、留言的处理文件。 - `tests/`:可能有单元...

    BSA2015-Basket-JsonRpcApi:用于篮子服务的JsonRPC Api

    标题中的“BSA2015-Basket-JsonRpcApi”是一个特定的项目或库,主要目的是提供一个用于处理购物篮(Basket)服务的JsonRPC API。JsonRPC(JSON Remote Procedure Call)是一种轻量级的远程调用协议,它允许通过HTTP...

Global site tag (gtag.js) - Google Analytics