x-stream.md 1.4 KB

XStream 流

转换可读数据流。

何时使用

  • 将 SSE 协议的 ReadableStream 转换为 Record
  • 将任何协议的 ReadableStream 解码并读取

使用说明

常见的 ReadableStream 实例,如 await fetch(...).body 使用示例:

import { XStream } from '@ant-design/x';

async function request() {
  const response = await fetch();
  // .....

  for await (const chunk of XStream({
    readableStream: response.body,
  })) {
    console.log(chunk);
  }
}

代码演示

默认协议 - SSE

SSE - https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events

:::demo XStream 默认的 transformStream 是用于 SSE 协议的流转换器。readableStream 接收一个 new ReadableStream(...) 实例,常见的如 await fetch(...).body

x-stream/default-protocol

:::

自定义协议

在本示例中,我们将演示如何解析 SIP 协议, 该协议常用于 P2P 音视频会话协商。

:::demo 传入 transformStream 流转换器,该参数需接收一个 new TransformStream(...) 实例。

x-stream/custom-protocol

:::

API

XStreamOptions

属性 说明 类型 默认值 版本
readableStream ReadableStream 实例 ReadableStream<'Uint8Array'> - -
transformStream 自定义的 transformStream 用于转换流的处理 TransformStream sseTransformStream -