Uruchamia zapytanie.
Żądanie HTTP
POST https://firestore.googleapis.com/v1/{parent=projects/*/databases/*/documents}:runQuery
Adres URL używa składni transkodowania gRPC.
Parametry ścieżki
Parametry | |
---|---|
parent |
Wymagane. Nazwa zasobu nadrzędnego. W formacie: |
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{ "explainOptions": { object ( |
Pola | |
---|---|
explainOptions |
Opcjonalnie. Wyjaśnij opcje zapytania. Jeśli jest ustawione, zwracane są dodatkowe statystyki zapytań. W przeciwnym razie zwracane będą tylko wyniki zapytania. |
Pole sumy query_type . Zapytanie do uruchomienia. query_type może mieć tylko jedną z tych wartości: |
|
structuredQuery |
Uporządkowane zapytanie. |
Pole sumy consistency_selector . Tryb spójności tej transakcji. Jeśli nie jest skonfigurowana, domyślnie stosowana jest silna spójność. consistency_selector może mieć tylko jedną z tych wartości: |
|
transaction |
Uruchom zapytanie w ramach już aktywnej transakcji. Wartość w tym miejscu to nieprzejrzysty identyfikator transakcji, w której ma zostać wykonane zapytanie. Ciąg zakodowany w formacie base64. |
newTransaction |
Rozpoczyna nową transakcję i odczytuje dokumenty. Domyślnie jest to transakcja tylko do odczytu. Nowy identyfikator transakcji zostanie zwrócony jako pierwsza odpowiedź w strumieniu. |
readTime |
Odczytuje dokumenty w takiej postaci, w jakiej były w danym momencie. Musi to być sygnatura czasowa z dokładnością do mikrosekundy z ostatniej godziny. Jeśli odzyskiwanie do określonego momentu jest włączone, może to być dodatkowo pełna sygnatura czasowa z ostatnich 7 dni. Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
Treść odpowiedzi
Odpowiedź dla: Firestore.RunQuery
.
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
Zapis JSON |
---|
{ "transaction": string, "document": { object ( |
Pola | |
---|---|
transaction |
Transakcja rozpoczęta w ramach tego żądania. Można go ustawić tylko w pierwszej odpowiedzi i tylko wtedy, gdy w żądaniu ustawiono atrybut Ciąg zakodowany w formacie base64. |
document |
Wynik zapytania, który nie jest ustawiany podczas raportowania częściowego postępu. |
readTime |
Czas odczytu dokumentu. Może narastać monotonicznie. w takim przypadku poprzednie dokumenty w strumieniu wyników nie zostaną zmienione między dokumentem Jeśli zapytanie nie zwróci żadnych wyników, zostanie wysłana odpowiedź z parametrem Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: |
skippedResults |
Liczba wyników, które zostały pominięte z powodu przesunięcia między ostatnią i bieżącą odpowiedzią. |
explainMetrics |
Wskaźniki wyjaśnień zapytania. Ten parametr występuje tylko wtedy, gdy podano |
Pole sumy continuation_selector . Tryb kontynuacji zapytania. Jeśli występuje, oznacza to, że bieżący strumień odpowiedzi na zapytanie został zakończony. Tę opcję można ustawić z użyciem parametru document lub bez niego, ale gdy jest ustawiony, nie są zwracane żadne więcej wyników. continuation_selector może mieć tylko jedną z tych wartości: |
|
done |
Jeśli jest dostępny, Firestore zakończył wykonywanie żądania i żadne dokumenty nie będą zwracane. |
Zakresy autoryzacji
Wymaga jednego z tych zakresów protokołu OAuth:
https://www.googleapis.com/auth/datastore
https://www.googleapis.com/auth/cloud-platform
Więcej informacji znajdziesz w artykule o uwierzytelnianiu (w języku angielskim).