QueryIterator class
Représente un objet QueryIterator, une implémentation de réponse de flux ou de requête qui permet de parcourir et d’itérer la réponse dans le service de base de données Azure Cosmos DB.
Méthodes
fetch |
Récupérez toutes les pages de la requête et retournez un seul FeedResponse. |
fetch |
Récupérez le lot suivant à partir du flux. Cela peut extraire ou non d’autres pages du back-end en fonction de vos paramètres et du type de requête. Les requêtes agrégées récupèrent généralement toutes les pages back-end avant de retourner le premier lot de réponses. |
get |
Obtient un itérateur asynchrone qui génère des résultats jusqu’à l’achèvement. REMARQUE : Les asyncIterators sont une fonctionnalité très nouvelle et vous devrez peut-être utiliser polyfils/etc. pour les utiliser dans votre code. Si vous utilisez TypeScript, vous pouvez utiliser le polyfill suivant tant que vous ciblez ES6 ou version ultérieure et que vous exécutez sur le nœud 6 ou version ultérieure.
Exemple Itérer sur toutes les bases de données
|
has |
Déterminez s’il reste des ressources à traiter en fonction de la valeur du jeton de continuation ou des éléments restants sur le lot actuel dans queryIterator. |
reset() | Réinitialisez le QueryIterator au début et effacez toutes les ressources qu’il contient |
Détails de la méthode
fetchAll()
Récupérez toutes les pages de la requête et retournez un seul FeedResponse.
function fetchAll(): Promise<FeedResponse<T>>
Retours
Promise<FeedResponse<T>>
fetchNext()
Récupérez le lot suivant à partir du flux.
Cela peut extraire ou non d’autres pages du back-end en fonction de vos paramètres et du type de requête. Les requêtes agrégées récupèrent généralement toutes les pages back-end avant de retourner le premier lot de réponses.
function fetchNext(): Promise<FeedResponse<T>>
Retours
Promise<FeedResponse<T>>
getAsyncIterator()
Obtient un itérateur asynchrone qui génère des résultats jusqu’à l’achèvement.
REMARQUE : Les asyncIterators sont une fonctionnalité très nouvelle et vous devrez peut-être utiliser polyfils/etc. pour les utiliser dans votre code.
Si vous utilisez TypeScript, vous pouvez utiliser le polyfill suivant tant que vous ciblez ES6 ou version ultérieure et que vous exécutez sur le nœud 6 ou version ultérieure.
if (!Symbol || !Symbol.asyncIterator) {
(Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}
Exemple
Itérer sur toutes les bases de données
for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
console.log(`Got ${db} from AsyncIterator`);
}
function getAsyncIterator(): AsyncIterable<FeedResponse<T>>
Retours
AsyncIterable<FeedResponse<T>>
hasMoreResults()
Déterminez s’il reste des ressources à traiter en fonction de la valeur du jeton de continuation ou des éléments restants sur le lot actuel dans queryIterator.
function hasMoreResults(): boolean
Retours
boolean
true s’il existe d’autres éléments à traiter dans QueryIterator.
reset()
Réinitialisez le QueryIterator au début et effacez toutes les ressources qu’il contient
function reset()