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 グラフが含まれます)、そのようなアプローチは REST の概念的な部分ではありません。一方、それらGraphQL の概念的な部分です。GraphQL と類似する例をいくつか挙げましたが、これは RESTful サービスであるという事実によるものではありません。

一方、REST は、GraphQL に準拠しない (またはその逆の) いくつかのアプローチに基づいています。不完全なリストには次のものが含まれます。

  • HTTP は REST の構成要素です。GraphQL の仕様では「クライアント」と「サーバー」について言及されていますが、 HTTPが必要であるとは読んでいませんでした。
  • REST は HTTP 動詞に基づいています。GraphQL は HTTP を必要としないように見えるため、HTTP 動詞を要求することはできません。いずれにしても、GraphQL では 1 つのクエリで操作を混在させることができるため、これは機能しません。1 つのリクエストでミューテーションとクエリを実行できます。クエリは GET でなければならないため、REST 互換ではありませんが、ミューテーションは POST または PUT でなければなりません。
  • HTTP ステータス コードのセマンティクスが GraphQL にありません。
于 2016-10-29T15:49:08.750 に答える