2017-01-25 9 views
0

現在、私はplayframeworkでSangria-graphqlを学び、hereからチュートリアルを進めています。私は、実行者Executor.execute(schema, query, new ProductRepo)がスキーマ、クエリ、コンテキストをとることを理解しています。一方、私はデモのサンプルコードを見て、私は、Executorの使用に従って、operationNameとVariablesも提供されています。たとえば、Sangria-graphql Executorを理解する

Executor.execute(SchemaDefinition.StarWarsSchema, queryAst, new CharacterRepo, 
      operationName = operation, 
      variables = variables getOrElse Json.obj(), 
      deferredResolver = DeferredResolver.fetchers(SchemaDefinition.characters), 
      maxQueryDepth = Some(10)) 
      .map(Ok(_)) 

私はそれを得ていません。変数がクエリのアーギュメントを意味する場合は、それ以降のクエリでidなどのクエリパラメータを含むクエリをクエリします。

{ 
    human(id: "1000") { 
    name 
    height(unit: FOOT) 
    } 
} 

なぜ、どのようにoperationNameがこのコンテキストで有益でしょうか?だから、どのようにクライアントがこれらのoperationNameと変数のクエリ要求を提供するかと一緒に誰でもそれについて私を説明することができます。

答えて