Menambahkan API GraphQL sintetis dan menyiapkan pemecah masalah bidang
BERLAKU UNTUK: Semua tingkatAN API Management
Di API Management, Anda dapat menambahkan API GraphQL di salah satu dari dua model: pass-through ke titik akhir GraphQL yang ada, atau mengimpor skema GraphQL dan membuat API GraphQL sintetis dengan pemecah bidang kustom. Untuk informasi selengkapnya, lihat gambaran umum GraphQL.
Catatan
Saat ini, fitur ini tidak tersedia di ruang kerja.
Dalam artikel ini, Anda akan:
- Mengimpor skema GraphQL ke instans API Management Anda
- Menyiapkan resolver untuk kueri GraphQL menggunakan titik akhir HTTP yang sudah ada
- Menguji API GraphQL Anda
Jika Anda ingin mengekspos titik akhir GraphQL yang ada sebagai API, lihat Mengimpor API GraphQL.
Prasyarat
- Instans API Management yang ada. Buat jika Anda belum melakukannya.
- File skema GraphQL yang valid dengan
.graphql
ekstensi. - Titik akhir GraphQL backend adalah opsional untuk skenario ini.
Membuka instans API Management Anda
Di portal Microsoft Azure, cari dan pilih layanan API Management.
Di halaman layanan API Management, pilih instans API Management Anda.
Tambahkan skema GraphQL
Dari menu navigasi samping, di bagian API, pilih API.
Pada Tentukan API baru, pilih ikon GraphQL.
Dalam kotak dialog, pilih Penuh dan lengkapi bidang formulir yang diperlukan.
Bidang Deskripsi Nama tampilan Nama yang akan ditampilkan untuk API WebSocket Anda. Nama Nama asli API GraphQL. Otomatis terisi saat Anda mengetik nama tampilan. Jenis GraphQL Pilih Synthetic GraphQL untuk mengimpor dari file skema GraphQL. Titik akhir Fallback GraphQL Secara opsional masukkan URL dengan nama titik akhir GraphQL API. API Management meneruskan kueri GraphQL ke titik akhir ini saat pemecah masalah kustom tidak diatur untuk suatu bidang. Keterangan Menambahkan deskripsi API Anda. Skema URL Buat pilihan berdasarkan titik akhir GraphQL Anda. Pilih salah satu opsi yang menyertakan skema WebSocket (WS atau WSS) jika API GraphQL Anda menyertakan jenis langganan. Pilihan default: HTTP(S). Akhiran URL API Tambahkan sufiks URL untuk mengidentifikasi API spesifik ini dalam instans API Management ini. Akhiran harus unik dalam instans API Management ini. URL Dasar Bidang yang tidak dapat diedit dan menampilkan URL basis API Anda Tag Mengaitkan API GraphQL Anda dengan tag baru atau yang sudah ada. Produk Mengaitkan API WebSocket Anda dengan produk untuk memublikasikannya. Versi API ini? Pilih untuk menerapkan skema penerapan versi ke API GraphQL Anda. Pilih Buat.
Setelah API dibuat, telusuri atau ubah skema pada tab Desain .
Mengonfigurasi pemecah masalah
Konfigurasikan resolver untuk memetakan bidang dalam skema ke titik akhir HTTP yang sudah ada. Langkah-langkah tingkat tinggi disediakan di sini. Untuk detailnya, lihat Mengonfigurasi pemecah masalah GraphQL.
Misalkan Anda mengimpor skema GraphQL dasar berikut dan ingin menyiapkan pemecah masalah untuk kueri pengguna.
type Query {
users: [User]
}
type User {
id: String!
name: String!
}
Dari menu navigasi samping, di bawah bagian API, pilih API> API GraphQL Anda.
Pada tab Skema , tinjau skema untuk bidang dalam jenis objek tempat Anda ingin mengonfigurasi pemecah masalah.
Pilih bidang, lalu di margin kiri, arahkan penunjuk.
Pilih + Tambahkan Resolver
Pada halaman Buat Resolver :
- Perbarui properti Nama jika Anda mau, secara opsional masukkan Deskripsi, dan konfirmasi atau perbarui pilihan Tipe dan Bidang.
- Di Sumber data, pilih HTTP API.
Di editor kebijakan Resolver, perbarui
<http-data-source>
elemen dengan elemen turunan untuk skenario Anda. Misalnya, resolver berikut mengambil bidang pengguna dengan melakukanGET
panggilan ke sumber data HTTP yang sudah ada.<http-data-source> <http-request> <set-method>GET</set-method> <set-url>https://myapi.contoso.com/users</set-url> </http-request> </http-data-source>
Pilih Buat.
Untuk mengatasi data untuk bidang lain dalam skema, ulangi langkah-langkah sebelumnya untuk membuat pemecah masalah.
Tip
Saat Anda mengedit kebijakan resolver, pilih Jalankan Pengujian untuk memeriksa output dari sumber data, yang dapat Anda validasi terhadap skema. Jika terjadi kesalahan, respons menyertakan informasi pemecahan masalah.
Menguji API GraphQL Anda
Navigasi ke instans API Management Anda.
Dari menu navigasi samping, di bagian API, pilih API.
Di bawah Semua API, pilih API GraphQL Anda.
Pilih tab Uji untuk mengakses konsol Uji.
Di bawah Header:
- Pilih header dari menu drop-down Nama.
- Masukkan nilai ke bidang Nilai.
- Tambahkan lebih banyak lagi header dengan memilih + Tambahkan header.
- Hapus header menggunakan ikon keranjang sampah.
Jika Anda telah menambahkan produk ke API GraphQL Anda, terapkan lingkup produk di bawah Terapkan lingkup produk.
Di bawah Editor Kueri, pilih:
Setidaknya satu bidang atau subbidang dari daftar di menu samping. Bidang dan subbidang yang Anda pilih akan muncul di editor kueri.
Mulailah mengetik di editor kueri untuk menulis kueri.
Di bawah Variabel kueri, tambahkan variabel untuk menggunakan kembali kueri atau mutasi yang sama dan melewatkan nilai yang berbeda.
Pilih Kirim.
Menampilkan Respons.
Ulangi langkah-langkah sebelumnya untuk menguji payload yang berbeda.
Ketika pengujian selesai, keluar dari konsol pengujian.
Mengamankan API GraphQL Anda
Amankan API GraphQL Anda dengan menerapkan kebijakan autentikasi dan otorisasi yang ada dan kebijakan validasi GraphQL untuk melindungi dari serangan khusus GraphQL.
Topik terkait
- Batasan impor API
- Mengimpor spesifikasi OpenAPI
- Mengimpor API SOAP
- Mengimpor SOAP API dan mengonversi ke REST
- Impor API App Service
- Impor API Aplikasi Kontainer
- Mengimpor API WebSocket
- Mengimpor API GraphQL
- Mengimpor skema GraphQL dan menyiapkan penyelesai bidang
- Impor Aplikasi Fungsi Azure
- Impor Azure Logic App
- Impor layanan Service Fabric
- Mengimpor API Azure OpenAI
- Mengimpor API OData
- Mengimpor metadata SAP OData
- Mengimpor API gRPC
- Edit API