Delen via


QueryIterator class

Vertegenwoordigt een QueryIterator-object, een implementatie van feed of queryantwoord die doorkruising en iteratie van het antwoord in de Azure Cosmos DB-databaseservice mogelijk maakt.

Methoden

fetchAll()

Haal alle pagina's voor de query op en retourneer één FeedResponse.

fetchNext()

Haal de volgende batch op uit de feed.

Dit kan al dan niet meer pagina's ophalen uit de back-end, afhankelijk van uw instellingen en het type query. Statistische query's halen over het algemeen alle back-endpagina's op voordat de eerste batch antwoorden wordt geretourneerd.

getAsyncIterator()

Hiermee haalt u een asynchrone iterator op die resultaten oplevert totdat deze is voltooid.

OPMERKING: AsyncIterators zijn een zeer nieuwe functie en mogelijk moet u polyfils/etc. gebruiken om ze in uw code te kunnen gebruiken.

Als u TypeScript gebruikt, kunt u de volgende polyfill gebruiken zolang u zich richt op ES6 of hoger en wordt uitgevoerd op knooppunt 6 of hoger.

if (!Symbol || !Symbol.asyncIterator) {
  (Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}

Voorbeeld

Herhalen over alle databases

for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
  console.log(`Got ${db} from AsyncIterator`);
}
hasMoreResults()

Bepaal of er nog resources zijn die moeten worden verwerkt op basis van de waarde van het vervolgtoken of de elementen die in de huidige batch in de QueryIterator overblijven.

reset()

De QueryIterator opnieuw instellen op het begin en alle resources erin wissen

Methodedetails

fetchAll()

Haal alle pagina's voor de query op en retourneer één FeedResponse.

function fetchAll(): Promise<FeedResponse<T>>

Retouren

Promise<FeedResponse<T>>

fetchNext()

Haal de volgende batch op uit de feed.

Dit kan al dan niet meer pagina's ophalen uit de back-end, afhankelijk van uw instellingen en het type query. Statistische query's halen over het algemeen alle back-endpagina's op voordat de eerste batch antwoorden wordt geretourneerd.

function fetchNext(): Promise<FeedResponse<T>>

Retouren

Promise<FeedResponse<T>>

getAsyncIterator()

Hiermee haalt u een asynchrone iterator op die resultaten oplevert totdat deze is voltooid.

OPMERKING: AsyncIterators zijn een zeer nieuwe functie en mogelijk moet u polyfils/etc. gebruiken om ze in uw code te kunnen gebruiken.

Als u TypeScript gebruikt, kunt u de volgende polyfill gebruiken zolang u zich richt op ES6 of hoger en wordt uitgevoerd op knooppunt 6 of hoger.

if (!Symbol || !Symbol.asyncIterator) {
  (Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}

Voorbeeld

Herhalen over alle databases

for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
  console.log(`Got ${db} from AsyncIterator`);
}
function getAsyncIterator(): AsyncIterable<FeedResponse<T>>

Retouren

AsyncIterable<FeedResponse<T>>

hasMoreResults()

Bepaal of er nog resources zijn die moeten worden verwerkt op basis van de waarde van het vervolgtoken of de elementen die in de huidige batch in de QueryIterator overblijven.

function hasMoreResults(): boolean

Retouren

boolean

true als er andere elementen moeten worden verwerkt in de QueryIterator.

reset()

De QueryIterator opnieuw instellen op het begin en alle resources erin wissen

function reset()