クエリとミューテーションの実行 - AWS AppSync

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

クエリとミューテーションの実行

コンソールの概要を確認したので、GraphQL をさらに活用してみましょう。左AWSAppSync コンソールでクエリタブに移動します。右側のペインで、スキーマが公開するクエリ、ミューテーション、およびサブスクリプションを含む、オペレーションをクリックスルーできます。[Mutation] ノードを選択してミューテーションを表示します。新しいイベントをそれに追加するには、のように入力します。createEvent(....):Event。 GraphQL でデータベースに項目を追加する場合に使用します。

GraphQL ミューテーションを使用するデータの追加

最初のステップは、GraphQL ミューテーションを使用するデータを追加することです。これを行うには、mutation キーワードを使用して適切な引数を渡します (関数の動作に似ています)。中括弧内にフィールドを配置することによって、レスポンスで返すデータの種類を選択することもできます。開始するには、次の内容をクエリエディタにコピーして貼り付け、[実行] を選択します。

mutation add { createEvent( name:"My first GraphQL event" where:"Day 1" when:"Friday night" description:"Catching up with friends" ){ id name where when description } }

GraphQL によって解析されたレコードは、データソースに接続されているリゾルバーで Amazon DynamoDB テーブルに挿入されます。(これは DynamoDB コンソールでチェックできます)。id を渡す必要がないことに注意してください。id は生成され、結果で中括弧に指定されて返されます。ベストプラクティスとして、このサンプルはautoId()GraphQL リゾルバーの関数が DynamoDB リソースに設定しているからです。ここでは、返された id 値を書き留めるだけです。これは、次のセクションで使用します。

GraphQL クエリを使用したデータの取得

これで、データベースにレコードがあるので、クエリを実行すると結果が返されます。GraphQL の主な利点の 1 つは、データの正確な要件を指定する機能があることで、クエリでアプリケーションが使用できます。今回は、中括弧内にいくつかのフィールドを追加するだけで、id 引数を getEvent() に渡し、一番上の [実行] を選択します。

query get { getEvent(id:"XXXXXX-XXXX-XXXXXXX-XXXX-XXXXXXXXX"){ name where description } }

今回は、指定されたフィールドのみが返されます。次のようにすべてのイベントのリストを試すこともできます。

query getAllEvents { listEvents{ items{ id name when } } }

今回、クエリでネストされた型に加え、オプションのクエリのフレンドリ名 (getAllEvents) が表示されます。追加または削除を試して、クエリを再実行します。終了したら、クライアントアプリケーションを接続する必要があります。

アプリケーションの実行

これで、API は動作し、クライアントアプリケーションを使用してこれを操作することもできます。AWSAppSync は、いくつかのプログラミング言語で始めるためのサンプルがに用意されています。に移動しますIntegrationページで、左側のコンソールナビゲーションのルートにあるAPI の名前をクリックすると、プラットフォームのリストが表示されます。下部で、ローカルワークステーションに適切なイベントアプリのサンプルのクローンを作成して設定ファイルをダウンロードし、必要に応じて、API ID でコード生成を実行するための手順で Amplify CLI を使用します。開始するときに含める必要がある詳細情報 (GraphQL API と API キーのエンドポイント URL など) を設定ファイルに含めます。この情報は、実稼働で IAM または Amazon Cognito ユーザープールを活用する場合に後から変更できます。詳細については、「セキュリティ」を参照してください。

次のステップ

ここでは事前設定されたスキーマを介して実行しましたが、API をゼロから構築する、既存のデータソースを組み込む、またはクライアントアプリケーションを構築することを選択できます。詳細については、次のセクションを参照してください。