mirror of
https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web.git
synced 2025-10-09 19:46:37 +08:00
feat: 修复因为截断导致的宽字符乱码问题
This commit is contained in:
parent
b1e26a5063
commit
28a9cddb3d
@ -159,7 +159,10 @@ export async function requestChatStream(
|
|||||||
|
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
const reader = res.body?.getReader();
|
const reader = res.body?.getReader();
|
||||||
const decoder = new TextDecoder();
|
const decoder = new TextDecoder("utf-8", {
|
||||||
|
fatal: true,
|
||||||
|
ignoreBOM: true,
|
||||||
|
});
|
||||||
|
|
||||||
options?.onController?.(controller);
|
options?.onController?.(controller);
|
||||||
|
|
||||||
@ -168,13 +171,12 @@ export async function requestChatStream(
|
|||||||
const resTimeoutId = setTimeout(() => finish(), TIME_OUT_MS);
|
const resTimeoutId = setTimeout(() => finish(), TIME_OUT_MS);
|
||||||
const content = await reader?.read();
|
const content = await reader?.read();
|
||||||
clearTimeout(resTimeoutId);
|
clearTimeout(resTimeoutId);
|
||||||
const text = decoder.decode(content?.value);
|
const text = decoder.decode(content?.value, { stream: !content?.done });
|
||||||
responseText += text;
|
responseText += text;
|
||||||
|
|
||||||
const done = !content || content.done;
|
|
||||||
options?.onMessage(responseText, false);
|
options?.onMessage(responseText, false);
|
||||||
|
|
||||||
if (done) {
|
if (content?.done) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user