Ejecuta una consulta.
Solicitud HTTP
POST https://firestore.googleapis.com/v1beta1/{parent=projects/*/databases/*/documents}:runQuery
La URL usa la sintaxis de la transcodificación gRPC.
Parámetros de ruta de acceso
Parámetros | |
---|---|
parent |
Obligatorio. El nombre del recurso superior. En el formato: |
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "explainOptions": { object ( |
Campos | |
---|---|
explainOptions |
Opcional. Explica las opciones para la consulta. Si se configura, se mostrarán estadísticas de consulta adicionales. De lo contrario, solo se mostrarán los resultados de la consulta. |
Campo de unión query_type . La consulta que se ejecutará. Las direcciones (query_type ) solo pueden ser una de las siguientes opciones: |
|
structuredQuery |
Una consulta estructurada. |
Campo de unión consistency_selector . El modo de coherencia para esta transacción. Si no está configurado, se establece de forma predeterminada para una coherencia sólida. Las direcciones (consistency_selector ) solo pueden ser una de las siguientes opciones: |
|
transaction |
Ejecuta la consulta dentro de una transacción que ya esté activa. El valor aquí es el ID de transacción opaco en el que se ejecutará la consulta. String codificada en base64. |
newTransaction |
Inicia una nueva transacción y lee los documentos. La configuración predeterminada es una transacción de solo lectura. El nuevo ID de transacción se mostrará como la primera respuesta en la transmisión. |
readTime |
Lee los documentos tal como estaban en el momento indicado. Debe ser una marca de tiempo con precisión de microsegundos dentro de la última hora o, si está habilitada la recuperación de un momento determinado, también puede ser una marca de tiempo de un minuto completo dentro de los últimos 7 días. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
Cuerpo de la respuesta
La respuesta para Firestore.RunQuery
.
Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:
Representación JSON |
---|
{ "transaction": string, "document": { object ( |
Campos | |
---|---|
transaction |
Indica la transacción que se inició como parte de esta solicitud. Solo se puede establecer en la primera respuesta y solo si se configuró String codificada en base64. |
document |
Un resultado de consulta, no establecido cuando se informa el progreso parcial |
readTime |
Es la hora a la que se leyó el documento. Esto puede aumentar de forma monótona. En este caso, se garantiza que los documentos anteriores del flujo de resultados no cambiaron entre su Si la consulta no muestra resultados, se enviará una respuesta con Una marca de tiempo en formato RFC3339 UTC “Zulú”, con resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
skippedResults |
La cantidad de resultados que se omitieron debido a un desplazamiento entre la última respuesta y la respuesta actual. |
explainMetrics |
Métricas de explicación de consultas Esto solo está presente cuando se proporciona el |
Campo de unión continuation_selector . El modo de continuación para la consulta. Si está presente, indica que finalizó la transmisión de respuesta de la consulta actual. Se puede configurar con o sin un document presente, pero cuando se configura, no se muestran más resultados. continuation_selector puede ser solo uno de los siguientes: |
|
done |
Si está presente, Firestore completó la solicitud y no se mostrarán más documentos. |
Permisos de autorización
Se necesita uno de los siguientes alcances de OAuth:
https://www.googleapis.com/auth/datastore
https://www.googleapis.com/auth/cloud-platform
Para obtener más información, consulta Descripción general de la autenticación.