json 객체를 계속 전송하는 스트리밍 엔드 포인트를 만들고 싶습니다. 청크 분할 전송 인코딩을 사용하여 시도한 결과 성공적으로 모든 브라우저 (chrome, firefox, safari)가 text/html 또는 text/plain 인 경우 서버에서 전송 된 데이터를 렌더링 할 수있었습니다. 하지만 application/json을 content-type으로 사용할 때 크롬에서는 작동하지 않습니다. 여기 코드는 다음과 같습니다크롬이 청크 json 응답을 렌더링하지 않습니다.
var http = require('http');
http.createServer(function(request, response){
response.setHeader('Connection', 'Transfer-Encoding');
response.setHeader('Transfer-Encoding', 'chunked');
response.setHeader('Cache-Control', 'no-cache');
// response.setHeader('Content-Type', 'application/json');
response.setHeader('Content-Type', 'text/html');
setInterval(function(){
response.write('test </br>');
// response.write('{"test": "test"}');
}, 10);
}).listen(8000);
위의 코드는 예상대로 작동하지만, 응용 프로그램/JSON 형식으로 작동하도록 캔트. 내가 놓친 게 있니?
Google 크롬은 "보기 소스"모드에서 실시간으로 출력을 렌더링합니다. 'view-source : http : // localhost : 8000 /'을 보라. 예상되는 행동은 무엇입니까? –
이것은 예상되는 동작입니다. 그래서, 만약 내가 트위터 크롬 브라우저 똑같은 일이 바로 일어날 것입 API를 통해 스트리밍 볼 수 있습니까? – az7ar