QueryIterator class

代表 QueryIterator 物件,這是摘要或查詢回應的實作,可啟用周遊和逐一查看 Azure Cosmos DB 資料庫服務中的回應。

方法

fetchAll()

擷取查詢的所有頁面,並傳回單一 FeedResponse。

fetchNext()

從摘要擷取下一個批次。

視您的設定和查詢類型而定,這可能會或可能不會從後端擷取更多頁面。 匯總查詢通常會在傳回第一批回應之前擷取所有後端頁面。

getAsyncIterator()

取得非同步反覆運算器,在完成之前會產生結果。

注意:AsyncIterators 是一項非常新的功能,您可能需要使用 polyfils/etc。才能在程式碼中使用它們。

如果您使用 TypeScript,只要以 ES6 或更高版本為目標且在節點 6 或更新版本上執行,就可以使用下列 polyfill。

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`);
}
hasMoreResults()

根據接續權杖的值,或 QueryIterator 中目前批次剩餘的專案,判斷是否有剩餘的資源要處理。

reset()

將 QueryIterator 重設為開頭,並清除其中的所有資源

方法詳細資料

fetchAll()

擷取查詢的所有頁面,並傳回單一 FeedResponse。

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

傳回

Promise<FeedResponse<T>>

fetchNext()

從摘要擷取下一個批次。

視您的設定和查詢類型而定,這可能會或可能不會從後端擷取更多頁面。 匯總查詢通常會在傳回第一批回應之前擷取所有後端頁面。

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

傳回

Promise<FeedResponse<T>>

getAsyncIterator()

取得非同步反覆運算器,在完成之前會產生結果。

注意:AsyncIterators 是一項非常新的功能,您可能需要使用 polyfils/etc。才能在程式碼中使用它們。

如果您使用 TypeScript,只要以 ES6 或更高版本為目標且在節點 6 或更新版本上執行,就可以使用下列 polyfill。

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

如果 QueryIterator 中有其他要處理的元素,則為 true。

reset()

將 QueryIterator 重設為開頭,並清除其中的所有資源

function reset()