क्वेरी चलाता है.
एचटीटीपी अनुरोध
POST https://firestore.googleapis.com/v1beta1/{parent=projects/*/databases/*/documents}:runQuery
यह यूआरएल gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.
पाथ के पैरामीटर
पैरामीटर | |
---|---|
parent |
ज़रूरी है. पैरंट रिसॉर्स का नाम. फ़ॉर्मैट: |
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में, इस तरह का डेटा शामिल होता है:
जेएसओएन के काेड में दिखाना |
---|
{ "explainOptions": { object ( |
फ़ील्ड | |
---|---|
explainOptions |
ज़रूरी नहीं. क्वेरी के विकल्पों के बारे में बताएं. अगर यह सेट हो, तो क्वेरी के और आंकड़े दिखाए जाएंगे. अगर ऐसा नहीं है, तो सिर्फ़ क्वेरी के नतीजे दिखाए जाएंगे. |
यूनियन फ़ील्ड query_type . वह क्वेरी जिसे चलाना है. query_type इनमें से सिर्फ़ एक हो सकती है: |
|
structuredQuery |
स्ट्रक्चर्ड क्वेरी. |
यूनियन फ़ील्ड consistency_selector . इस लेन-देन के लिए अनुकूलता मोड. अगर यह नीति सेट नहीं है, तो डिफ़ॉल्ट रूप से अच्छी कंसिस्टेंसी होती है. consistency_selector इनमें से सिर्फ़ एक हो सकती है: |
|
transaction |
पहले से चालू ट्रांज़ैक्शन में क्वेरी चलाएं. यहां दी गई वैल्यू, क्वेरी को एक्ज़ीक्यूट करने के लिए ओपेक ट्रांज़ैक्शन आईडी है. base64 कोड में बदली गई स्ट्रिंग. |
newTransaction |
नया लेन-देन शुरू करता है और दस्तावेज़ों को पढ़ता है. डिफ़ॉल्ट तौर पर, यह लेन-देन सिर्फ़ पढ़ने के लिए होता है. नया लेन-देन आईडी, स्ट्रीम में पहले जवाब के तौर पर दिखाया जाएगा. |
readTime |
दस्तावेज़ों को उसी समय पढ़ता है जैसे वे दिए गए समय पर थे. यह पिछले एक घंटे के अंदर का माइक्रोसेकंड का सटीक टाइमस्टैंप होना चाहिए. इसके अलावा, अगर पॉइंट-इन-टाइम रिकवरी चालू है, तो यह पिछले सात दिनों में पूरे मिनट का टाइमस्टैंप भी हो सकता है. RFC3339 यूटीसी "ज़ुलु" फ़ॉर्मैट में एक टाइमस्टैंप, जिसमें नैनोसेकंड का रिज़ॉल्यूशन और नौ फ़्रैक्शनल अंक हो सकते हैं. उदाहरण: |
जवाब का मुख्य भाग
Firestore.RunQuery
के लिए रिस्पॉन्स.
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
जेएसओएन के काेड में दिखाना |
---|
{ "transaction": string, "document": { object ( |
फ़ील्ड | |
---|---|
transaction |
वह लेन-देन, जो इस अनुरोध के तहत शुरू किया गया था. इसे सिर्फ़ पहले जवाब में सेट किया जा सकता है. साथ ही, इसे सिर्फ़ तब सेट किया जा सकता है, जब अनुरोध में base64 कोड में बदली गई स्ट्रिंग. |
document |
क्वेरी का एक नतीजा, जो अधूरी प्रोग्रेस की रिपोर्ट करते समय सेट नहीं किया गया है. |
readTime |
दस्तावेज़ को पढ़े जाने का समय. ऐसा हो सकता है कि यह बढ़ोतरी एक ही बार हो. ऐसे में, इस बात की गारंटी है कि नतीजे स्ट्रीम में पिछले दस्तावेज़ों के अगर क्वेरी का कोई नतीजा नहीं मिलता है, तो RFC3339 यूटीसी "ज़ुलु" फ़ॉर्मैट में एक टाइमस्टैंप, जिसमें नैनोसेकंड का रिज़ॉल्यूशन और नौ फ़्रैक्शनल अंक हो सकते हैं. उदाहरण: |
skippedResults |
आखिरी जवाब और मौजूदा जवाब के बीच ऑफ़सेट की वजह से छोड़े गए नतीजों की संख्या. |
explainMetrics |
क्वेरी से मेट्रिक के बारे में जानकारी मिलती है. यह जानकारी सिर्फ़ तब दिखती है, जब |
यूनियन फ़ील्ड continuation_selector . क्वेरी के लिए कंटिन्यूशन मोड. अगर यह मौजूद है, तो इससे पता चलता है कि क्वेरी का मौजूदा जवाब स्ट्रीम खत्म हो गया है. इसे document के साथ या उसके बिना सेट किया जा सकता है. हालांकि, सेट होने पर और नतीजे नहीं मिलते. continuation_selector इनमें से सिर्फ़ एक हो सकती है: |
|
done |
अगर यह मौजूद है, तो Firestore ने अनुरोध को पूरी तरह से पूरा कर दिया है और कोई और दस्तावेज़ नहीं लौटाया जाएगा. |
अनुमति के दायरे
इनमें से किसी एक OAuth दायरों की ज़रूरत होती है:
https://www.googleapis.com/auth/datastore
https://www.googleapis.com/auth/cloud-platform
ज़्यादा जानकारी के लिए, पुष्टि करने से जुड़ी खास जानकारी देखें.