ステップ 1: スキーマを起動する - AWS AppSync

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

ステップ 1: スキーマを起動する

この例では、ユーザーが「タスクを終了」や「食料品を受け取る」など、毎日の雑用リマインダー用の Todo アイテムを作成できる Todo API を作成します。このアプリは、状態が Amazon DynamoDB に保持されている GraphQL オペレーションの使用方法のデモを示します。

概念的には、初めての GraphQL API を作成するには 3 つの主要なステップがあります。スキーマ (タイプとフィールド) を定義し、データソースをフィールドにアタッチして、ビジネスロジックを処理するリゾルバーを作成する必要があります。ただし、コンソールの操作では順序が変わります。まず、データソースとスキーマの相互作用を定義し、後でスキーマとリゾルバーを定義します。

GraphQL API を作成するには
  1. AWS Management Console にサインインして、AppSync コンソールを開きます。

  2. ダッシュボードで、[API の作成] を選択します。

  3. GraphQL API が選択されている状態で、[ゼロからデザインする] を選択します。次に、[次へ] を選択します。

  4. [API 名] では、あらかじめ入力されている名前を Todo API に変更し、[次へ] を選択します。

    注記

    他にもオプションがありますが、この例では使用しません。

  5. [ターゲットリソース] セクションで、以下の操作を行います。

    1. [DynamoDB テーブルを基にしたタイプを今すぐ作成] を選択します。

      注記

      つまり、データソースとしてアタッチする新しい DynamoDB テーブルを作成します。

    2. [名前] フィールドに Todo を入力します。

      注記

      最初の要件は、スキーマを定義することです。このモデル名は型名になるので、実際に行うのはスキーマに存在する Todo という type を作成することです。

      type Todo {}
    3. [フィールド] で、次の操作を行います。

      1. id という名前で、タイプは ID、必須は Yes に設定して設定します。

        注記

        これらは指定したタイプ Todo の範囲内に存在するフィールドです。ここでのフィールド名は、id でタイプは ID! です。

        type Todo { id: ID! }

        AWS AppSync は、さまざまな用途向けに複数のスカラー値をサポートします。

      2. [新しいフィールドを追加] を使用して、Name 値をnamewhenwheredescriptionに設定した 4 つの追加フィールドを作成します。それらの Type 値は String になり、Array および Required の値は両方とも No に設定されます。次のようになります。

        注記

        フルタイプとそのフィールドは次のようになります。

        type Todo { id: ID! name: String when: String where: String description: String }

        この定義済みモデルを使用してスキーマを作成しているため、データソースへの入力が容易になるように、createdelete update などの型に基づく定型的な変更もいくつか追加されます。

    4. [モデルテーブルの設定] に、TodoAPITable などのテーブル名を入力します。プライマリキーid に設定します。

      注記

      基本的に、TodoApitable という新しい DynamoDB テーブルを作成します。このテーブルは、プライマリデータソースとして API にアタッチされます。プライマリキーは、この前に定義した必須 id フィールドに設定されます。この新しいテーブルは空白で、パーティションキー以外は何も含まれていないことに注意してください。

    5. 次に、[次へ] を選択します。

  6. 選択した内容を確認し、[ロールを作成] をクリックします。AWS AppSync サービスが API の作成を完了するまでしばらくお待ちください。

スキーマと DynamoDB データソースを含む GraphQL API が正常に作成されました。上記の手順を要約すると、まったく新しい GraphQL API を作成することにしました。API の名前を定義し、次に最初のタイプを追加してスキーマ定義を追加しました。タイプとそのフィールドを定義し、データを含まない新しい DynamoDB テーブルを作成して、いずれかのフィールドにデータソースをアタッチすることにしました。