1

我只是玩了一下graphql,还不能识别graphql和REST之间的区别,嵌入和部分响应。

TeamCity 多年来一直使用部分响应,它作为“Restful”服务工作

https://github.com/dotarj/PartialResponse

http://v2.wp-api.org/reference/links.html

4

1 回答 1

2

REST 是一种架构风格,而不是一种格式或查询语言(就像 GraphQL 一样)。可以构建支持部分资源或资源层次结构的 API(其他示例包括 JSON 补丁或 JSON Graph),但这些方法不是 REST 的概念部分。另一方面,它们GraphQL 的概念部分。您选择的示例与 GraphQL 有一些相似之处,但这并不是因为它们是 RESTful 服务。

另一方面,REST 基于一些不符合 GraphQL 的方法(反之亦然)。不完整的列表包括:

  • HTTP 是 REST 的构建块。GraphQL 规范谈到了“客户端”和“服务器”,但我没有读到它需要HTTP。
  • REST 基于 HTTP 动词。看起来 GraphQL 不需要 HTTP,它也不需要 HTTP 动词。无论如何,这是行不通的,因为 GraphQL 允许您在一个查询中混合操作:您可以在一个请求中执行一个突变和一个查询——这与 REST 不兼容,因为查询必须是 GET,而突变必须是 POST 或 PUT。
  • GraphQL 中缺少 HTTP 状态代码的语义。
于 2016-10-29T15:49:08.750 回答