ArtStream 流
转换可读数据流。
何时使用
- 将 SSE 协议的
ReadableStream转换为Record - 将任何协议的
ReadableStream解码并读取
使用说明
常见的 ReadableStream 实例,如 await fetch(...).body 使用示例:
js
import { ArtStream } from '@artmate/chat'
async function request() {
const response = await fetch()
// .....
for await (const chunk of ArtStream({
readableStream: response.body,
})) {
console.log(chunk)
}
}代码演示
默认协议 - SSE
SSE - https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events
ArtStream 默认的 transformStream 是用于 SSE 协议的流转换器。readableStream 接收一个 new ReadableStream(...) 实例,常见的如 await fetch(...).body
查看源代码
自定义协议
在本示例中,我们将演示如何解析 SIP 协议, 该协议常用于 P2P 音视频会话协商。
传入 transformStream 流转换器,该参数需接收一个 new TransformStream(...) 实例。
查看源代码
API
ArtStreamOptions
| 属性 | 说明 | 类型 | 默认值 | 版本 |
|---|---|---|---|---|
| readableStream | ReadableStream 实例 | ReadableStream<'Uint8Array'> | - | - |
| transformStream | 自定义的 transformStream 用于转换流的处理 | TransformStream<string, T> | sseTransformStream | - |