fix: sse json error

This commit is contained in:
josc146
2023-05-27 12:14:20 +08:00
parent 09f897ff95
commit ada5dbf5bf
2 changed files with 14 additions and 8 deletions
+13 -7
View File
@@ -22,13 +22,19 @@ export async function fetchSSE(resource, options) {
if (!str.startsWith('{') && !str.startsWith('"{')) {
parser.feed(str)
} else {
const formattedStr =
'data: ' +
JSON.stringify(
JSON.parse(str.replace(/^"|"$/g, '').replaceAll('\\"', '"').replaceAll('\\\\u', '\\u')),
).replaceAll('\\\\n', '\\n') +
'\n\ndata: [DONE]\n\n'
parser.feed(formattedStr)
try {
const formattedData = JSON.parse(
str
.replace(/^"|"$/g, '')
.replaceAll('\\"', '"')
.replaceAll('\\\\u', '\\u')
.replaceAll('\\\\n', '\\n'),
)
const formattedStr = 'data: ' + JSON.stringify(formattedData) + '\n\ndata: [DONE]\n\n'
parser.feed(formattedStr)
} catch (error) {
console.debug('json error', error)
}
}
if (!hasStarted) {