解决使用WebSocket向前端进行数据推送,但数据变为二进制流[object Blob]的问题
最近在做基于Vue的数据可视化的项目,使用koa2进行后台项目开发,引入webSocket对前后端代码进行改造,保持浏览器和服务端之间的长连接。一、需要解决的问题在进行前后端数据交互的测试时,发现存在客户端获取的数据与服务端发送的数据不一致的情况。如下:二、解决方案在反复确认代码正确的情况下,尝试对比之前能正确获取数据的服务器的初始化文件。发现解决这个现象的办法就是更改package.json中w
最近在做基于Vue的数据可视化的项目,使用koa2进行后台项目开发,引入webSocket对前后端代码进行改造,保持浏览器和服务端之间的长连接。
一、需要解决的问题
在进行前后端数据交互的测试时,发现存在客户端获取的数据与服务端发送的数据不一致的情况。如下:
二、解决方案
在反复确认代码正确的情况下,尝试对比之前能正确获取数据的服务器的初始化文件。
发现解决这个现象的办法就是更改package.json中webSocket依赖的版本号。因为初始化后台文件夹时,默认依赖的版本就是最新版本,此时只需要降低依赖版本即可。
例如:原来的package.json文件代码如下:(此时依赖的版本为8.3.0)
此时将ws依赖的版本号改为7.3.0就可以解决这个问题 :
注意:在修改了package.json文件之后,如果服务器是启动的,需要停止服务器,然后重新更新一下项目中第三方包的信息,即重新安装一下依赖包。就是在后台项目根目录下打开终端执行以下命令:
npm install
此时,重新启动服务器,连接成功以后再尝试获取服务器端发送的数据。
node app.js
至此,客户端就能从服务端获取到正确的数据了。
更多推荐
所有评论(0)