后端API使用Java的StreamingResponseBody发送(JSON的)流。我想使用javascript(在前端)将流的块转换为正确的JSON格式。但是,它不起作用。这是我使用的代码:
function getData () {
fetch("MY_URL")
.then(response=>{
const reader = response.body.getReader();
return new ReadableStream({
start(controller) {
return pump();
function pump() {
return reader.read().then({done, value}) => {
if(done){
controller.close();
console.log("Done");
return;
}
const chunk = new TextDecoder("utf-8").decode(value);
console.log(JSON.parse(JSON.stringify(chunk)));
controller.enqueue(value);
return pump();
});
}
}
});
}).catch(err=>console.log(err));
}
我该如何解决它以便将大块转换为JSON?