QueryIterator class
Представляет объект QueryIterator, реализацию веб-канала или ответа запроса, который позволяет выполнять обход и итерацию по ответу в службе базы данных Azure Cosmos DB.
Методы
fetch |
Извлеките все страницы запроса и верните один объект FeedResponse. |
fetch |
Получите следующий пакет из веб-канала. Это может или не может получить больше страниц из серверной части в зависимости от ваших параметров и типа запроса. Агрегированные запросы обычно извлекает все внутренние страницы, прежде чем возвращать первый пакет ответов. |
get |
Возвращает асинхронный итератор, который будет давать результаты до завершения. ПРИМЕЧАНИЕ. AsyncIterators — это очень новая функция, и вам может потребоваться использовать полифилы и т. д., чтобы использовать их в коде. Если вы используете TypeScript, вы можете использовать следующее полизаполнение, если вы нацелены на ES6 или более поздней версии и работаете на узле 6 или более поздней версии.
Пример Итерации по всем базам данных
|
has |
Определите, есть ли еще оставшиеся ресурсы для обработки на основе значения маркера продолжения или элементов, оставшихся в текущем пакете в QueryIterator. |
reset() | Сброс элемента QueryIterator до начала и очистка всех ресурсов в нем |
Сведения о методе
fetchAll()
Извлеките все страницы запроса и верните один объект FeedResponse.
function fetchAll(): Promise<FeedResponse<T>>
Возвращаемое значение
Promise<FeedResponse<T>>
fetchNext()
Получите следующий пакет из веб-канала.
Это может или не может получить больше страниц из серверной части в зависимости от ваших параметров и типа запроса. Агрегированные запросы обычно извлекает все внутренние страницы, прежде чем возвращать первый пакет ответов.
function fetchNext(): Promise<FeedResponse<T>>
Возвращаемое значение
Promise<FeedResponse<T>>
getAsyncIterator()
Возвращает асинхронный итератор, который будет давать результаты до завершения.
ПРИМЕЧАНИЕ. AsyncIterators — это очень новая функция, и вам может потребоваться использовать полифилы и т. д., чтобы использовать их в коде.
Если вы используете TypeScript, вы можете использовать следующее полизаполнение, если вы нацелены на ES6 или более поздней версии и работаете на узле 6 или более поздней версии.
if (!Symbol || !Symbol.asyncIterator) {
(Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}
Пример
Итерации по всем базам данных
for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
console.log(`Got ${db} from AsyncIterator`);
}
function getAsyncIterator(): AsyncIterable<FeedResponse<T>>
Возвращаемое значение
AsyncIterable<FeedResponse<T>>
hasMoreResults()
Определите, есть ли еще оставшиеся ресурсы для обработки на основе значения маркера продолжения или элементов, оставшихся в текущем пакете в QueryIterator.
function hasMoreResults(): boolean
Возвращаемое значение
boolean
Значение true, если в QueryIterator есть другие элементы для обработки.
reset()
Сброс элемента QueryIterator до начала и очистка всех ресурсов в нем
function reset()