工作箱串流

類型

StreamsHandlerCallback()

workbox-streams.StreamsHandlerCallback(
  __namedParameters: RouteHandlerCallbackOptions,
)

參數

傳回

StreamSource

列舉

回應

ReadableStream

BodyInit

方法

concatenate()

workbox-streams.concatenate(
  sourcePromises: Promise<StreamSource>[],
)

需要多個來源 Promise,每個 Promise 都可用來解析回應, ReadableStream 或 BodyInit

傳回對每個個別串流公開 ReadableStream 的物件 並透過 Promise 標記 串流結束 (適合傳遞至 FetchEvent 的 waitUntil() 時)。

參數

傳回

  • 物件

    }

concatenateToResponse()

workbox-streams.concatenateToResponse(
  sourcePromises: Promise<StreamSource>[],
  headersInit: HeadersInit,
)

接收多個來源 Promise,每個來源都會解析為回應、ReadableStream 或 BodyInit,並搭配 HeadersInit

傳回公開一個物件,該物件是公開回應的 依序傳回串流資料及承諾 串流結束 (如要傳遞至 FetchEvent 的 waitUntil()),

參數

  • sourcePromises

    Promise<StreamSource>[]

  • headersInit

    HeadersInit

傳回

  • 物件

    }

isSupported()

workbox-streams.isSupported()

這是一種公用程式方法,可判斷目前的瀏覽器是否支援建立串流回應所需的功能。目前會檢查是否可以建立 ReadableStream

傳回

  • 布林值

    true,如果目前的瀏覽器符合 串流回應,但 false 不符合條件。

strategy()

workbox-streams.strategy(
  sourceFunctions: StreamsHandlerCallback[],
  headersInit: HeadersInit,
)

建立策略的捷徑,以便放置於 Workbox 路由器。

在無法建構新 ReadableStream 的瀏覽器上,這個策略會自動等待所有 sourceFunctions 完成,並建立最終回應,將這些值連結在一起。

參數