typescript - Izvrši X kada SignalR ne uspije koristiti websockets


Želim upozoriti korisnika kada SignalR ne može uspostaviti WebSocket vezu. Kako mogu saznati je li WebSocket veza blokirana/koristi li SignalR neki drugi način prijenosa?

Koristim Asp.net Core SignalR i Typescript.

Odgovor #1

Kako mogu saznati je li Websocket veza blokirana/koristi li SignalR neku drugu metodu prijenosa?

Na SignalR JavaScript klijentu možemo dobiti transport koristeći ovaj isječak koda.

HubConnection.connection.transport.constructor.name

Testni kod

var connection = new signalR.HubConnectionBuilder().withUrl("/chatHub")
    .configureLogging(signalR.LogLevel.Trace)
    .build();

//...

connection.start().then(function () {
    //...
    //get the transport

    console.log(connection.connection.transport.constructor.name);
}).catch(function (err) {
    return console.error(err.toString());
});

Rezultat testa

S WebSocketom

S dugim ispitivanjem