QueryIterator class
Representa um objeto QueryIterator, uma implementação de feed ou resposta de consulta que permite a passagem e a iteração sobre a resposta no serviço de banco de dados do Azure Cosmos DB.
Métodos
fetch |
Busque todas as páginas da consulta e retorne um único FeedResponse. |
fetch |
Recupere o próximo lote do feed. Isso pode ou não buscar mais páginas do back-end dependendo das configurações e do tipo de consulta. As consultas agregadas geralmente buscarão todas as páginas de back-end antes de retornar o primeiro lote de respostas. |
get |
Obtém um iterador assíncrono que produzirá resultados até a conclusão. OBSERVAÇÃO: AsyncIterators são um recurso muito novo e talvez seja necessário usar polyfils/etc. para usá-los em seu código. Se você estiver usando o TypeScript, poderá usar o polyfill a seguir, desde que tenha como destino o ES6 ou superior e esteja em execução no Nó 6 ou superior.
Exemplo Iterar em todos os bancos de dados
|
has |
Determine se ainda há recursos restantes a serem processados com base no valor do token de continuação ou nos elementos restantes no lote atual no QueryIterator. |
reset() | Redefinir o QueryIterator para o início e limpar todos os recursos dentro dele |
Detalhes do método
fetchAll()
Busque todas as páginas da consulta e retorne um único FeedResponse.
function fetchAll(): Promise<FeedResponse<T>>
Retornos
Promise<FeedResponse<T>>
fetchNext()
Recupere o próximo lote do feed.
Isso pode ou não buscar mais páginas do back-end dependendo das configurações e do tipo de consulta. As consultas agregadas geralmente buscarão todas as páginas de back-end antes de retornar o primeiro lote de respostas.
function fetchNext(): Promise<FeedResponse<T>>
Retornos
Promise<FeedResponse<T>>
getAsyncIterator()
Obtém um iterador assíncrono que produzirá resultados até a conclusão.
OBSERVAÇÃO: AsyncIterators são um recurso muito novo e talvez seja necessário usar polyfils/etc. para usá-los em seu código.
Se você estiver usando o TypeScript, poderá usar o polyfill a seguir, desde que tenha como destino o ES6 ou superior e esteja em execução no Nó 6 ou superior.
if (!Symbol || !Symbol.asyncIterator) {
(Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}
Exemplo
Iterar em todos os bancos de dados
for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
console.log(`Got ${db} from AsyncIterator`);
}
function getAsyncIterator(): AsyncIterable<FeedResponse<T>>
Retornos
AsyncIterable<FeedResponse<T>>
hasMoreResults()
Determine se ainda há recursos restantes a serem processados com base no valor do token de continuação ou nos elementos restantes no lote atual no QueryIterator.
function hasMoreResults(): boolean
Retornos
boolean
true se houver outros elementos a serem processados no QueryIterator.
reset()
Redefinir o QueryIterator para o início e limpar todos os recursos dentro dele
function reset()