javascript - WebSocketGateway 中的 WsException 不起作用

标签 javascript node.js typescript websocket nestjs

我正在使用 NestJs 并遇到一个问题。我只是无法在 WebSocket 网关中抛出异常。

一切按照this doc page .

我尝试过包含

@UseFilters(new BaseWsExceptionFilter())

但是...没有帮助。

import {
    SubscribeMessage,
    WebSocketGateway,
    WebSocketServer, WsException,
} from '@nestjs/websockets';
import { Client, Server } from 'socket.io';

@WebSocketGateway()
export class EventsGateway {
    @WebSocketServer()
    server: Server;

    @SubscribeMessage('exception')
    exception(client: Client, data: number) {
        throw new WsException('Invalid credentials.');
    }
}

我有这样的smt...

/home/innistry/Projects/nest-likbez/node_modules/rxjs/internal/util/hostReportError.js:4
[0]     setTimeout(function () { throw err; }, 0);
[0]                              ^
[0] 
[0] TypeError: host.setType is not a function
[0]     at WsProxy.handleError (/home/innistry/Projects/nest-likbez/node_modules/@nestjs/websockets/context/ws-proxy.js:26:14)
[0]     at EventsGateway.<anonymous> (/home/innistry/Projects/nest-likbez/node_modules/@nestjs/websockets/context/ws-proxy.js:20:22)
[0]     at process._tickCallback (internal/process/next_tick.js:68:7)

最佳答案

由于早期版本中的错误,它无法工作。请将您的依赖项更新到最新版本,例如使用 npm updateyarn Upgrade

关于javascript - WebSocketGateway 中的 WsException 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58000638/

相关文章:

node.js - NodeJS child_process.execFile() 总是返回未知系统错误 193

javascript - 用于类型检查和编译错误的 Typescript 外部函数

node.js - Nodejs中的变量sqlite3查询

node.js - 无服务器框架无法识别 tsconfig 的路径

javascript - 重新渲染图形时如何保持当前缩放比例和平移级别

javascript - Node.js - 等价的traceroute

typescript - ngFormModel 的动态属性?

Angular 2,StyleUrls + 样式

javascript - 如何在不使用提交按钮的情况下从 html 表单传递值

javascript - 在 Meteor 中提交图像后清除表单