Feathersjs 知道服务器何时离线(来自客户端)

Feathersjs know when server is offline(from the client)

我有一个 Angular 应用程序,它使用 socket.io 连接到 Feathers API,使用 @feathersjs/authentication-client 连接到 feathers-reactive。这很好用!

这是我的客户端代码:

import * as feathersRx from 'feathers-reactive';
import * as io from 'socket.io-client';
import feathers from '@feathersjs/feathers';
import feathersSocketIOClient from '@feathersjs/socketio-client';

export function fInit(options: FeathersOptions): void {
    // eslint-disable-next-line @typescript-eslint/no-var-requires
    const _feathersAuthClient = require('@feathersjs/authentication-client').default;
    const _feathersApp = feathers();

    const _socket: SocketIOClient.Socket = io(options.feathersIP, {
        transports: ['websocket'],
        forceNew: true
    });

    _feathersApp.configure(feathersSocketIOClient(_socket))
        .configure(_feathersAuthClient({
            storage: options.storage
        }))
        .configure(feathersRx({
            idField: '_id'
        }));
}

在这种情况下,我只是启动了应用程序,而不是 API。 Feathers 已初始化并查找未找到的服务器。

我想在 Angular 应用程序中了解的是 服务器何时关闭?

每当发生此类错误时,是否可以从上述代码中获取任何类型的事件、订阅、回调或其他任何内容?

任何 help/tip/pointer 与此事有关的任何人都非常感谢!

提前致谢

*鉴于所有 socketioauthentication-clientfeathers-reactive 的配置性质,我什至不知道错误从何而来。

所以 message/error 来自 socket.io 并且 socket.io 有以下您可以收听的事件:

_socket.on("disconnect", () => changeServerState('disconnected'));
_socket.on("connect", () => changeServerState('connected'));
_socket.on("connect_error", () => changeServerState('error'));
_socket.on("connect_timeout", () => changeServerState('connect_timeout'));