我有一个前端应用程序(VUE JS)

我有一个后端(Nest JS)

Vue JS应用程序使用Vue套接字通过WebSocket从后端获取数据.io扩展库

轮询xhr.js?d33e:229邮政编码

error

How can I fix this error?

我认为它与库无关,我只是try 了socket io库,结果是一样的.

服务器正在工作,因为它会发送日志(log)并显示连接的用户:

server respond

Server(Nest JS)

async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  app.enableCors();
  await app.listen(11050);
}
bootstrap();

应用程序.网关:

@WebSocketGateway()
export class AppGateway implements OnGatewayInit, OnGatewayConnection, OnGatewayDisconnect {


  private logger: Logger = new Logger('AppGatway');

  @SubscribeMessage('msgToServer')
  handleMessage(client: Socket, text: string): WsResponse<string> {
    return { event: 'msgToClient', data: text };
  }

  afterInit(server: Server) {
    this.logger.log('Initialised!');
  }

  handleConnection(client: Socket, ...args: any[]): any {
    this.logger.log(`Client connected: ${client.id}`);
  }

  handleDisconnect(client: Socket): any {
    this.logger.log(`Client disconnected: ${client.id}`);
  }
}

Frontend(Vue JS):

import VueSocketIOExt from "vue-socket.io-extended";
import Vue from "vue";
import io from "socket.io-client";
const socket = io("http://localhost:11050/");

Vue.use(VueSocketIOExt, socket);

data: () => ({
socket: null,
    connection: null,
    sockets: {
      connect() {
        console.log("socket connected");
      },
    },
}

推荐答案

今天我遇到了这个问题,使用了一个非常类似的NestJS实现,但是我的前端是用ReactJS编写的.我认为这个问题与不匹配的插座有关.io服务器和客户端版本.

我解决了这个问题,把socket.io-client的版本从^3.0.0降到了^2.3.0.

Vue.js相关问答推荐

vue : 多个样式的类绑定在一个

Vue Datepicker 不会在渲染时显示默认日期

Vue Js Composition Api 未定义(读取名称)

我如何使用 vuejs 在我的 url 中编码一个令牌

如果单元格不可见,则以编程方式打开行的编辑模式. Ag 网格,Vue.js

将初始值设置为可直接在 HTML 中使用的 vue.js 模型

拖入 vue2-google-map 后如何获取标记位置?

Vue:根元素内容和内容分发槽

vuejs vue-cli 如何使用 console.log 而不会出现任何错误

带有 vue.js 的 img 网址

为什么不先移动鼠标就无法滚动视差?

即使在生产模式下构建,VueJS 也会显示开发模式开发模式消息

Vue.js 拦截器

在 VUE JS 的光标位置插入字符

Vue.js 单向绑定表单

如何让 vuetify 数据表在卡片内时跨越容器的整个宽度?

使用 Vue.js 获取所有选中复选框的列表

VueJS 2 + ASP.NET MVC 5

如何在 Vue 数据对象中运行函数?

如果通过 jquery 更新,Vuejs 绑定不起作用