工作区流

类型

StreamsHandlerCallback()

workbox-streams.StreamsHandlerCallback(
  __namedParameters: RouteHandlerCallbackOptions,
)

参数

返回

StreamSource

枚举

响应

ReadableStream

BodyInit

方法

concatenate()

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

接受多个源 promise,每个 promise 都可以解析为 Response、ReadableStream 或 BodyInit

返回一个对象,该对象会展示一个 ReadableStream (其中包含按顺序返回每个流的数据),以及一个在流结束时发出信号的 Promise(用于传递给 FetchEvent 的 waitUntil())。

参数

返回

  • 对象

    }

concatenateToResponse()

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

接受多个源 Promise,每个 promise 都可以解析为 Response、ReadableStream 或 BodyInit,以及 HeadersInit

返回一个对象,该对象会公开一个响应,该响应的正文包含按顺序返回的每个数据流的数据,以及一个在数据流完成时发出信号的 Promise(用于传递给 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 完成,并创建将其值连接在一起的最终响应。

参数