Anypoint Exchange に GraphQL API スキーマをパブリッシュします。次に、Anypoint Code Builder を使用して、スキーマを Mule アプリケーションにインポートしてスキャフォールディングします。インターフェースを実行して実装します。
始める前に
次の手順を実行します。
-
MuleSoft 環境をセットアップします。 詳細は、Anypoint Code Builder 入門を参照してください。
-
ブック API GraphQL スキーマをダウンロードします。
または、次のコンテンツが含まれる books-api.graphql という名前のファイルを作成します。schema { query: Query } type Query { bookById(id: ID): Book books: [Book] bestsellers: Bestsellers } type Book { id: ID! name: String pageCount: Int author: Author } type Author { id: ID! firstName: String lastName: String } type Bestsellers { books: [Book] authors: [Author] }
GraphQL API を Exchange にパブリッシュする
GraphQL API を実装するには、まず GraphQL API を Exchange に手動でパブリッシュする必要があります。
-
Anypoint Exchange に移動し、サインインします。
手順を表示
-
US クラウド (非 EU ホスト): Exchange (US)
-
EU クラウド (EU ホスト): Exchange (EU)
-
-
[Publish new asset (新規アセットをパブリッシュ)] をクリックします。
-
[Name (名前)] に
「books-api」と入力します。 -
[Asset types (アセットタイプ)] では、[GraphQL API] を選択します。
-
[Method (方法)] では、[Upload a GraphQL API Schema (GraphQL API スキーマをアップロード)] を選択します。
-
[File upload (ファイルアップロード)] では、[Choose file (ファイルを選択)] をクリックして目的の
books-api.graphql スキーマファイルを探します。 -
[Lifecycle state (ライフサイクル状態)] では、[Stable (安定)] を選択します。
-
[Publish (パブリッシュ)] をクリックします。
GraphQL API スキーマを実装する
Anypoint Code Builder を使用して Anypoint Exchange のスキーマを取得し、デスクトップ IDE またはクラウド IDE から実装できるインターフェースにスキーマをスキャフォールディングします。
-
Anypoint Code Builder を開きます。
-
コマンドパレットを開きます。
手順を表示
-
キーボードショートカットを使用する。
-
Mac: Cmd+Shift+p
-
Windows: Ctrl+Shift+p
-
-
デスクトップ IDE で、[View (表示)] > [Command Palette (コマンドパレット)] を選択する。
-
クラウド IDE で、
(メニュー) アイコンをクリックし、[View (表示)] > [Command Palette (コマンドパレット)] を選択する。
-
-
次のコマンドを入力します。
MuleSoft: Implement an API Specification -
Anypoint Platform にサインインするように求められたら、[Allow (許可)] をクリックして、プロンプトに従ってサインインします。
-
次の値を使用してプロジェクトを設定します。
-
Project Name (プロジェクト名):
books-implementation -
[Project Location (プロジェクトの場所)]: [Browse (参照)] をクリックしてホームディレクトリを選択します。
-
Exchange で
「books」と入力して Return キーを押し、books-api 仕様を検索して結果を表示します。 -
検索結果で books-api の上にマウスポインターを置き、表示される [Add Asset (アセットを追加)] ボタンをクリックします。
-
Mule Runtime および Java バージョンを入力します。
-
-
[Create Project (プロジェクトを作成)] をクリックします。
-
確認を促されたら、API 仕様の作成者を信頼します。
信頼しないと、IDE からプロジェクトの作業を行うことができません。
作成者を信頼すると、Anypoint Code Builder では GraphQL API をスキャフォールディングし、ブック API GraphQL スキーマ内のタイプごとに空のフローでプロジェクトを作成します。
GraphQL スキーマ Mule フロー type Query { bookById(id: ID): Book books: [Book] bestsellers: Bestsellers } type Book { id: ID! name: String pageCount: Int author: Author } type Author { id: ID! firstName: String lastName: String } type Bestsellers { books: [Book] authors: [Author] }<flow name="Query.bookById"/> <flow name="Query.books"/> <flow name="Query.bestsellers"/> <flow name="Book.author"/> <flow name="Bestsellers.books"/> <flow name="Bestsellers.authors"/>各フローには、
<graphql-router:data-fetcher/>、<set-payload/>、<graphql-router:serialize/> 要素の設定が含まれます。<graphql-router:data-fetcher> 要素は、フローのトリガーとして機能します。データフェッチャーについての詳細は、データソースへの GraphQL API のマッピングを参照してください。 -
GraphQL プロジェクトをテストするに進み、Anypoint Code Builder でアプリケーションを実行して、GraphQL クエリをエンドポイントに投稿します。