Menjalankan kueri.
Permintaan HTTP
POST https://firestore.googleapis.com/v1beta1/{parent=projects/*/databases/*/documents}:runQuery
URL menggunakan sintaksis gRPC Transcoding.
Parameter jalur
Parameter | |
---|---|
parent |
Wajib. Nama resource induk. Dalam format: |
Isi permintaan
Isi permintaan memuat data dengan struktur berikut:
Representasi JSON |
---|
{ "explainOptions": { object ( |
Kolom | |
---|---|
explainOptions |
Opsional. Menjelaskan opsi untuk kueri tersebut. Jika ditetapkan, statistik kueri tambahan akan ditampilkan. Jika tidak, hanya hasil kueri yang akan ditampilkan. |
Kolom union query_type . Kueri yang akan dijalankan. query_type hanya ada berupa salah satu diantara berikut: |
|
structuredQuery |
Kueri terstruktur. |
Kolom union consistency_selector . Mode konsistensi untuk transaksi ini. Jika tidak disetel, setelan default-nya adalah konsistensi kuat. consistency_selector hanya ada berupa salah satu diantara berikut: |
|
transaction |
Jalankan kueri dalam transaksi yang sudah aktif. Nilai di sini adalah ID transaksi buram untuk mengeksekusi kueri. String berenkode base64. |
newTransaction |
Memulai transaksi baru dan membaca dokumen. Setelan defaultnya adalah transaksi hanya baca. ID transaksi baru akan ditampilkan sebagai respons pertama dalam aliran data. |
readTime |
Membaca dokumen sebagaimana adanya pada waktu yang ditentukan. Ini harus berupa stempel waktu presisi mikrodetik dalam satu jam terakhir, atau jika Pemulihan Point-in-Time diaktifkan, dapat juga berupa stempel waktu menit penuh dalam 7 hari terakhir. Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit fraksional. Contoh: |
Isi respons
Respons untuk Firestore.RunQuery
.
Jika berhasil, isi respons memuat data dengan struktur berikut:
Representasi JSON |
---|
{ "transaction": string, "document": { object ( |
Kolom | |
---|---|
transaction |
Transaksi yang dimulai sebagai bagian dari permintaan ini. Hanya dapat ditetapkan dalam respons pertama, dan hanya jika String berenkode base64. |
document |
Hasil kueri, tidak disetel saat melaporkan progres sebagian. |
readTime |
Waktu saat dokumen dibaca. Jumlah ini mungkin meningkat secara monoton; dalam kasus ini, dokumen sebelumnya dalam aliran hasil dijamin tidak berubah antara Jika kueri tidak menampilkan hasil, respons dengan Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit fraksional. Contoh: |
skippedResults |
Jumlah hasil yang dilewati karena adanya offset antara respons terakhir dan respons saat ini. |
explainMetrics |
Mengkueri metrik. Hal ini hanya ada jika |
Kolom union continuation_selector . Mode kelanjutan untuk kueri. Jika ada, ini menunjukkan bahwa streaming respons kueri saat ini telah selesai. Kolom ini dapat ditetapkan dengan atau tanpa adanya document , tetapi jika ditetapkan, tidak ada hasil lagi yang ditampilkan. continuation_selector hanya dapat berupa salah satu dari yang berikut: |
|
done |
Jika ada, berarti Firestore telah menyelesaikan permintaan sepenuhnya dan tidak ada lagi dokumen yang akan ditampilkan. |
Cakupan otorisasi
Memerlukan salah satu cakupan OAuth berikut:
https://www.googleapis.com/auth/datastore
https://www.googleapis.com/auth/cloud-platform
Untuk informasi selengkapnya, lihat Ringkasan Autentikasi.