工作箱串流

類型

StreamsHandlerCallback()

workbox-streams.StreamsHandlerCallback(
  __namedParameters: RouteHandlerCallbackOptions,
)

參數

傳回

StreamSource

列舉

回應

ReadableStream

BodyInit

方法

concatenate()

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

採用多個來源 Promise,且每個通訊協定都可以解析為回應、ReadableStream 或 BodyInit

傳回會公開 ReadableStream 的物件,且每個串流都會依序傳回資料,以及串流完成時顯示的信號 (適合傳遞至 FetchEvent 的 waitUntil() )。

參數

傳回

  • 物件

    }

concatenateToResponse()

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

採用多個來源 Promise,每個 Promise 都能解析為回應、ReadableStream 或 BodyInit,以及包含 HeadersInit

傳回公開回應的物件,其主體由依序傳回的個別串流資料以及串流完成時信號 (適用於傳遞至 FetchEvent 的 waitUntil() 時)。

參數

  • sourcePromises

    Promise<StreamSource>[]

  • headersInit

    HeadersInit

傳回

  • 物件

    }

isSupported()

workbox-streams.isSupported()

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

傳回

  • boolean

    true,如果目前的瀏覽器符合串流回應的需求,false則否。

strategy()

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

建立可置入 Workbox 路由器的捷徑。

在不支援建構新的 ReadableStream 的瀏覽器中,這項策略會自動等待所有 sourceFunctions 完成,並建立最終回應,將多個值串連在一起。

參數