Learning GraphQLを読み終わりました
Admin私のストア
GraphQLをRestAPIを呼び出すミドルウェアのように使用できます。resolverのinput jsonをRestAPIにpostします。GraphQLは一度のリクエストで複数のresolverを呼び出すので、複数のAPIに対して一個のエンドポイントから呼び出せます。
GraphQLサーバーはschemaとresolverを引数に実行されます。
HASURAはGraphQLからSQLを生成します。schema、resolverはデータベースのschemaから自動生成します。
クライアント側から見たら生SQLをポストするような使い方ができますので便利です。サーバー側から見たら何かを抽象化するわけではなく、resolverの実装が増えます。単一責任の原則からは外れますがHASURAのように自動生成による抽象化もあります。
resolverをうまく抽象化できればGraphQLをクライアント、サーバー間のやりとりを抽象化する仕様として扱えるかもしれないと感じました。