流式获取数据
fetch 获取文本
首先使用resp.body?.getReader()创建阅读器,然后循环阅读数据await reader.read(),最后通过解码器解码数据块。
js
export async function getStreamData(url) {
const resp = await fetch(url, {
method: "get",
responseType: "stream",
headers: {
Authorization: "Bearer " + "token",
"Content-Type": "application/json",
},
});
const reader: any = resp.body?.getReader();
const decoder = new TextDecoder();
while (true) {
const { done, value } = await reader.read();
if (done) {
break;
}
const txt = decoder.decode(value);
console.log(txt);
}
}
JStar