Method: projects.databases.documents.batchGet

الحصول على مستندات متعددة

لا تضمن هذه الطريقة إرجاع المستندات بالترتيب نفسه الذي تم طلبه بها.

طلب HTTP

POST https://firestore.googleapis.com/v1beta1/{database=projects/*/databases/*}/documents:batchGet

يستخدم عنوان URL بنية تحويل الترميز gRPC.

معلمات المسار

المَعلمات
database

string

مطلوبة. اسم قاعدة البيانات بالتنسيق: projects/{projectId}/databases/{databaseId}.

نص الطلب

يحتوي نص الطلب على بيانات بالبنية التالية:

تمثيل JSON
{
  "documents": [
    string
  ],
  "mask": {
    object (DocumentMask)
  },

  // Union field consistency_selector can be only one of the following:
  "transaction": string,
  "newTransaction": {
    object (TransactionOptions)
  },
  "readTime": string
  // End of list of possible types for union field consistency_selector.
}
الحقول
documents[]

string

أسماء المستندات المراد استردادها. بالتنسيق: projects/{projectId}/databases/{databaseId}/documents/{document_path}. لن ينجح الطلب إذا لم يكن أي من المستند موردًا فرعيًا للحقل database المحدَّد. سيتم حذف الأسماء المكرّرة.

mask

object (DocumentMask)

الحقول المطلوب عرضها. وفي حال تم ترك السياسة بدون ضبط، سيتم عرض جميع الحقول.

إذا كان المستند يحتوي على حقل غير متوفّر في هذا القناع، لن يتم عرض هذا الحقل في الاستجابة.

حقل الاتحاد consistency_selector وضع الاتّساق لهذه المعاملة وفي حال تم ترك هذه السياسة بدون ضبط، سيتم ضبط الإعدادات التلقائية على تناسق قوي. يمكن أن يكون الحقل "consistency_selector" واحدًا فقط مما يلي:
transaction

string (bytes format)

لقراءة المستندات في معاملة.

سلسلة بترميز base64.

newTransaction

object (TransactionOptions)

يبدأ معاملة جديدة ويقرأ المستندات. يكون الإعداد التلقائي هو معاملة القراءة فقط. سيظهر معرِّف المعاملة الجديد كأول ردّ في ساحة المشاركات.

readTime

string (Timestamp format)

يقرأ المستندات كما كانت في الوقت المحدَّد.

يجب أن يكون هذا الطابع الزمني بدقة ميكرو ثانية خلال الساعة الماضية، أو إذا تم تفعيل ميزة "استرداد نقطة زمنية"، يمكن أيضًا أن يكون طابعًا زمنيًا لدقيقة كاملة خلال آخر 7 أيام.

طابع زمني بتنسيق RFC3339 UTC "Zulu" ، مع دقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z"

نص الاستجابة

الاستجابة المباشرة لـ Firestore.BatchGetDocuments.

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

تمثيل JSON
{
  "transaction": string,
  "readTime": string,

  // Union field result can be only one of the following:
  "found": {
    object (Document)
  },
  "missing": string
  // End of list of possible types for union field result.
}
الحقول
transaction

string (bytes format)

المعاملة التي بدأت كجزء من هذا الطلب سيتم ضبطها فقط في الردّ الأول، وفقط في حال ضبط BatchGetDocumentsRequest.new_transaction في الطلب.

سلسلة بترميز base64.

readTime

string (Timestamp format)

الوقت الذي تمت فيه قراءة المستند. قد تتم زيادة هذا العدد بشكل أحادي، وفي هذه الحالة يمكننا ضمان عدم تغيير المستندات السابقة في تدفق النتائج بين readTime وهذه الحالة.

طابع زمني بتنسيق RFC3339 UTC "Zulu" ، مع دقة نانوثانية وما يصل إلى تسعة أرقام كسرية. أمثلة: "2014-10-02T15:01:23Z" و"2014-10-02T15:01:23.045123456Z"

حقل الاتحاد result نتيجة واحدة وقد يكون هذا الحقل فارغًا إذا كان الخادم يعرض معاملة فقط. يمكن أن يكون الحقل "result" واحدًا فقط مما يلي:
found

object (Document)

المستند الذي تم طلبه.

missing

string

اسم المستند الذي تم طلبه لكنه غير موجود. بالتنسيق: projects/{projectId}/databases/{databaseId}/documents/{document_path}.

نطاقات التفويض

يتطلب استخدام أحد نطاقات OAuth التالية:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة على المصادقة.