Permintaan HTTP Kueri/manajemen
Berlaku untuk: ✅Microsoft Fabric✅Azure Data Explorer
Meminta kata kerja dan sumber daya
Perbuatan | Kata kerja HTTP | Sumber daya HTTP |
---|---|---|
Kueri | GET | /v1/rest/query |
Kueri | POST | /v1/rest/query |
Query v2 | GET | /v2/rest/query |
Query v2 | POST | /v2/rest/query |
Manajemen | POST | /v1/rest/mgmt |
Misalnya, untuk mengirim perintah manajemen ("manajemen") ke titik akhir layanan, gunakan baris permintaan berikut:
POST https://help.kusto.windows.net/v1/rest/mgmt HTTP/1.1
Lihat Header permintaan dan Isi untuk mempelajari apa yang harus disertakan.
Header permintaan
Tabel berikut berisi header umum yang digunakan untuk operasi kueri dan manajemen.
Header standar | Deskripsi | Diperlukan/Opsional |
---|---|---|
Accept |
Jenis media yang diterima klien. Atur ke application/json . |
Wajib |
Accept-Encoding |
Pengodean konten yang didukung. Pengodean yang didukung adalah gzip dan deflate . |
Opsional |
Authorization |
Kredensial autentikasi. Untuk informasi selengkapnya, lihat autentikasi. | Wajib |
Connection |
Apakah koneksi tetap terbuka setelah operasi. Rekomendasinya adalah mengatur Connection ke Keep-Alive . |
Opsional |
Content-Length |
Ukuran isi permintaan. Tentukan panjang isi permintaan jika diketahui. | Opsional |
Content-Type |
Jenis media isi permintaan. Atur ke application/json dengan charset=utf-8 . |
Wajib |
Expect |
Respons yang diharapkan dari server. Ini dapat diatur ke 100-Continue . |
Opsional |
Host |
Nama domain yang memenuhi syarat tempat permintaan dikirim. Contohnya,help.kusto.windows.net . |
Wajib |
Tabel berikut berisi header kustom umum yang digunakan untuk operasi kueri dan manajemen. Kecuali disebutkan, header ini hanya digunakan untuk tujuan telemetri dan tidak memengaruhi fungsionalitas.
Semua header bersifat opsional. Namun, Sebaiknya tentukan x-ms-client-request-id
header kustom.
Dalam beberapa skenario, seperti membatalkan kueri yang sedang berjalan, x-ms-client-request-id
diperlukan karena digunakan untuk mengidentifikasi permintaan.
Header kustom | Deskripsi |
---|---|
x-ms-app |
Nama aplikasi yang ramah membuat permintaan. |
x-ms-user |
Nama yang mudah diingat pengguna yang membuat permintaan. |
x-ms-user-id |
Nama bersahabat yang sama dengan x-ms-user . |
x-ms-client-request-id |
Pengidentifikasi unik untuk permintaan. |
x-ms-client-version |
Pengidentifikasi versi yang ramah untuk klien yang membuat permintaan. |
x-ms-readonly |
Jika ditentukan, ini memaksa permintaan untuk berjalan dalam mode baca-saja yang mencegah permintaan mengubah data. |
Parameter permintaan
Parameter berikut dapat diteruskan dalam permintaan. Mereka dikodekan dalam permintaan sebagai parameter kueri atau sebagai bagian dari isi, bergantung pada apakah GET atau POST digunakan.
Parameter | Deskripsi | Diperlukan/Opsional |
---|---|---|
csl |
Teks perintah kueri atau manajemen untuk dijalankan. | Wajib |
db |
Nama database yang merupakan target perintah kueri atau manajemen. | Opsional untuk beberapa perintah manajemen. Diperlukan untuk semua kueri dan semua perintah lainnya. |
properties |
Properti permintaan yang mengubah cara permintaan diproses dan hasilnya. Untuk informasi selengkapnya, lihat Meminta properti. | Opsional |
Parameter kueri GET
Saat permintaan GET digunakan, parameter kueri menentukan parameter permintaan.
Isi
Saat permintaan POST digunakan, isi permintaan berisi satu dokumen JSON yang dikodekan UTF-8, yang mencakup nilai parameter permintaan.
Contoh
Contoh berikut menunjukkan permintaan HTTP POST untuk kueri.
POST https://help.kusto.windows.net/v2/rest/query HTTP/1.1
Header permintaan
Accept: application/json
Authorization: Bearer ...AzureActiveDirectoryAccessToken...
Accept-Encoding: deflate
Content-Type: application/json; charset=utf-8
Host: help.kusto.windows.net
x-ms-client-request-id: MyApp.Query;e9f884e4-90f0-404a-8e8b-01d883023bf1
x-ms-user-id: EARTH\davidbg
x-ms-app: MyApp
Isi permintaan
{
"db":"Samples",
"csl":"print Test=\"Hello, World!\"",
"properties":"{\"Options\":{\"queryconsistency\":\"strongconsistency\"},\"Parameters\":{},\"ClientRequestId\":\"MyApp.Query;e9f884e4-90f0-404a-8e8b-01d883023bf1\"}"
}
Contoh berikut menunjukkan cara membuat permintaan yang mengirim kueri sebelumnya, menggunakan curl.
Dapatkan token untuk autentikasi.
Ganti
AAD_TENANT_NAME_OR_ID
,AAD_APPLICATION_ID
, danAAD_APPLICATION_KEY
dengan nilai yang relevan, setelah menyiapkan autentikasi aplikasi Microsoft Entra.curl "https://login.microsoftonline.com/AAD_TENANT_NAME_OR_ID/oauth2/token" \ -F "grant_type=client_credentials" \ -F "resource=https://help.kusto.windows.net" \ -F "client_id=AAD_APPLICATION_ID" \ -F "client_secret=AAD_APPLICATION_KEY"
Cuplikan kode ini memberi Anda token pembawa.
{ "token_type": "Bearer", "expires_in": "3599", "ext_expires_in":"3599", "expires_on":"1578439805", "not_before":"1578435905", "resource":"https://help.kusto.windows.net", "access_token":"eyJ0...uXOQ" }
Gunakan token pembawa dalam permintaan Anda ke titik akhir kueri.
curl -d '{"db":"Samples","csl":"print Test=\"Hello, World!\"","properties":"{\"Options\":{\"queryconsistency\":\"strongconsistency\"}}"}"' \ -H "Accept: application/json" \ -H "Authorization: Bearer eyJ0...uXOQ" \ -H "Content-Type: application/json; charset=utf-8" \ -H "Host: help.kusto.windows.net" \ -H "x-ms-client-request-id: MyApp.Query;e9f884e4-90f0-404a-8e8b-01d883023bf1" \ -H "x-ms-user-id: EARTH\davidbg" \ -H "x-ms-app: MyApp" \ -X POST https://help.kusto.windows.net/v2/rest/query
Baca respons sesuai dengan kode status respons.
Mengatur properti permintaan klien dan parameter kueri
Dalam contoh isi permintaan berikut, kueri di csl
bidang mendeklarasikan dua parameter bernama n
dan d
. Nilai untuk parameter kueri tersebut Parameters
ditentukan dalam bidang di bawah properties
bidang dalam isi permintaan. Bidang Options
menentukan properti permintaan klien.
Catatan
Parameter non-string dan non-panjang harus dinyatakan sebagai literal KQL dalam format string.
{
"db": "Samples",
"csl": "declare query_parameters (n:long, d:dynamic); StormEvents | where State in (d) | top n by StartTime asc",
"properties": {
"Options": {
"maxmemoryconsumptionperiterator": 68719476736,
"max_memory_consumption_per_query_per_node": 68719476736,
"servertimeout": "50m"
},
"Parameters": {
"n": 10, "d": "dynamic([\"ATLANTIC SOUTH\"])"
}
}
}
Untuk informasi selengkapnya, lihat Properti permintaan yang didukung.
Kirim perintah perlihatkan kebijakan penembolokan database
Contoh berikut mengirimkan permintaan untuk memperlihatkan kebijakan penembolokan Samples
database.
{
"db": "Samples",
"csl": ".show database Samples policy caching",
"properties": {
"Options": {
"maxmemoryconsumptionperiterator": 68719476736,
"max_memory_consumption_per_query_per_node": 68719476736,
"servertimeout": "50m"
}
}
}