GraphQL エディター用のファブリック API
Note
GraphQL 用 Microsoft Fabric API はプレビュー段階です。
GraphQL 用の Fabric API は、グラフィカルなブラウザー内 GraphQL 開発環境を提供します。これにより、対話型のプレイグラウンドで GraphQL クエリと変更のライブ結果を作成、テスト、および表示できます。
エディターに移動するには、Fabric で GraphQL 用 API 項目を開き、ポータル画面の左下隅にある [クエリ] を選択します。
GraphQL クエリは、[クエリ] タブで直接入力して実行できます。Intellisense 機能は、キーボード ショートカット (Ctrl + Space (Windows)、または Command + Space (macOS) で使用できます。 [実行] を選択してクエリを実行し、それに応じてデータ ソースからデータを取得します。
コードを生成する
目的の GraphQL 操作をテストしてプロトタイプを作成すると、API エディターは、エディターで実行されたクエリまたは変更に基づいて定型的な Python またはNode.jsコードを生成できます。 生成されたコードをテスト目的でローカルで実行し、その一部をアプリケーション開発プロセスで再利用できます。
重要
生成されたコードは対話型のブラウザー資格情報を使用するため、テスト目的でのみ使用する必要があります。 運用環境では、常に Microsoft Entra にアプリケーションを登録し、適切な client_id
スコープを使用します。 サンプル コードを含むエンドツーエンドの例は、「アプリケーションの接続」にあります。
開始するには、クエリを実行し、[コードの生成] ボタンを選択し、それに応じて言語を選択します。
生成されたコードをコピーし、ローカル フォルダーにファイルとして保存できます。 選択した言語に応じて、簡単な手順に従ってローカルでテストします。
Python
- コマンドを使用して仮想環境を作成する
python -m venv .venv
- 使用または〘
.venv\Scripts\activate
をアクティブ化します。venv
source .venv/bin/activate
- コマンドを使用して必要な依存関係をインストールする
pip install azure.identity
- を使用してコードを実行します。
python <filename.py>
Node.JS
- 保存したファイルと同じフォルダーに、次の内容の
package.json
ファイルを作成します。
{
"type": "module",
"dependencies": {
}
}
- 選択したパッケージ マネージャーで実行または同様のコマンドを実行
npm install --save @azure/identity
して、最新バージョンの ID ライブラリをインストールします。 - を使用してコードを実行します。
node <filename>.js
クエリと変更の開発
次の短い GraphQL スキーマを確認します。このスキーマでは、1 つの投稿を読み取るか、すべての投稿を一覧表示するクエリを含む 1 つの Post
型を定義します。 また、すべての CRUDL (作成、読み取り、更新、削除、リスト) のユース ケースをサポートする投稿を作成、更新、または削除するための変更も定義します。
type Post {
id: ID!
title: String!
content: String!
author: String!
published: Boolean
}
type Query {
getPost(id: ID!): Post
getAllPosts: [Post]
}
type Mutation {
createPost(title: String!, content: String!, author: String!): Post
updatePost(id: ID!, title: String, content: String, author: String, published: Boolean): Post
deletePost(id: ID!): Boolean
}
スキーマで定義されている任意のクエリを使用して、GraphQL で公開されているデータを読み取ることができます。 getPost
クエリは、次の例のようになります。
query MyQuery {
getPost(id: "1234") {
title
content
author
}
}
応答:
{
"data": {
"getPost": {
"title": "First Post",
"content": "This is my first post.",
"author": "Jane Doe"
}
}
}
必要なパラメーターを使用して投稿を作成する createPost
などの変更を使用してデータを書き込みます。
mutation MyMutation {
createPost(title: "Second post", content: "This is my second post", author: "Jane Doe", published: false) {
id
title
content
author
}
}
応答:
{
"data": {
"createPost": {
"id": "5678",
"title": "Second Post",
"content": "This is my second post.",
"author": "Jane Doe"
}
}
}
クエリ変数
クエリまたは変更に変数としてパラメーターを渡すには、[クエリ] タブの右側にある [クエリ変数] ウィンドウを使用します。 変数は、他のプログラミング言語の変数と同じように機能します。 各変数は、その変数に格納されている値にアクセスするために使用される名前で宣言する必要があります。 前の変更の例では、クエリ変数を使用するように少し変更できます。
mutation MyMutation ($title: String!, $content: String!, $author: String!){
createPost(title: $title, content: $content, author: $author) {
id
title
content
author
}
}
次の例のように、ウィンドウで変数を定義します。
{
"id": "5678",
"title": "Second Post",
"content": "This is my second post.",
"author": "Jane Doe"
}
変数を使用すると、変更コードがクリーンになり、パラメーターの読み取り、テスト、変更が簡単になります。