为了账号安全,请及时绑定邮箱和手机立即绑定

使用node.js创建一个websocket时,不调用res.end(),客户端无法显示数据

使用node.js创建一个websocket时,不调用res.end(),客户端无法显示数据

紫衣仙女 2019-04-07 11:18:44
用node.js创建一个websocket:javascriptresponse.writeHead(200,{"Content-Type":"text/event-stream"});vartimer=setInterval(function(){varcontent="date:"+newDate().toUTCString()+"\n\n";response.write(content);console.log("Datagotqueuedinmemory(content="+content+")");},1000)由于websocket,需要不断发送内容,所以不能使用response.end(),但是不执行这句话,前端的数据就始终在等待状态.请问有什么办法能每次response.write()一点,前端就接受一点,类似于php的@flush()那样...
查看完整描述

2 回答

?
繁花不似锦

TA贡献1851条经验 获得超4个赞

很明显你的代码并不是websocket,而是SSE的服务端代码。代码没有成功的原因是打错字了。。。。
varcontent="date:"+newDate().toUTCString()+"\n\n";
应为:
varcontent="data:"+newDate().toUTCString()+"\n\n";
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 278 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信