2017-10-02 5 views
-2

私のアプリケーションにはREST APIが組み込まれており、GraphQLを使用する予定です。 GraphQL Apolloとサーバー側のSpringとの統合を説明するドキュメントやオンラインリファレンスがあるかどうかを知りたいですか?助けてください。Springを使用した集計用のGraphql

答えて

0

あなたの質問の答えが広すぎる。すべてのGraphQLクライアントはGraphQLサーバーで動作し、GraphQLはAPIレイヤーのみであるため、サーバーは任意のフレームワークスタックで実装できます。 graphql-spqrを使用してgraphql-Javaに最小限の(しかしかなり完了)春ブーツ例えば

、要するにhttps://github.com/leangen/graphql-spqr-samples

を参照してください、あなたはGraphQLスキーマを作成し、通常のコントローラを作成して、ランタイムを初期化し、エンドポイントがクエリを受信するのを公開します。

@RestController 
public class GraphQLSampleController { 

    private final GraphQL graphQL; 

    @Autowired 
    public GraphQlSampleController(/*Inject the services needed*/) { 

     GraphQLSchema schema = ...; //create the schema 
     graphQL = GraphQL.newGraphQL(schemaFromAnnotated).build(); 
    } 

    //Expose an endpoint for queries 
    @PostMapping(value = "/graphql", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) 
    @ResponseBody 
    public Object endpoint(@RequestBody Map<String, Object> request) { 
     ExecutionResult executionResult = graphQL.execute((String) request.get("query")); 

     return executionResult; 
    } 
} 

これは最小です。完全なチュートリアルでは、graphql-java-toolsを使ってSpringを使わずに、the Java track on HowToGraphQLをチェックしてください。

+0

ありがとうございます。私はこの質問を投稿したときに何のアイデアも持っていませんが、後で私はインターネット上でいくつかのものをサーフィンし、いくつかの基本的な知識を得ました。あなたの応答は本当に便利です。私はapollo-data graphql serverについて聞いたことがあり、今日分析を開始するように勧められました。しかし、SpringとJerseyの組み合わせでREST APIを構築しました。 apollo-dataには、クライアントからのクエリを変換して既存のコードやAPIと話す方法を提供するツールやプラグインが付属していますか?それ以外の場合は、既存のAPIまたはコードを完全に書き直す必要があります。助けてくれるポインタを投げてください。 – user2585494

+0

@ user2585494私が言ったように、GraphQLはAPIレイヤーなので、すでに持っているものは再利用できます。 RESTエンドポイントを呼び出すJavaScriptにGraphQLサーバーを、RESTの背後にある同じメソッドをJavaで直接呼び出すGraphQLサーバーを持つことができます。 Btw、もし私があなたを助けたら、答えを受け入れてupvoteしないでくださいなぜですか? – kaqqao

関連する問題