Я установил @ aspnet / signalr в моем проекте Angular 6
Я перепробовал все другие варианты, найденные в потоке стека, для проблемы с сигнализатором.Ниже приведен мой сервисный код:
import { Injectable } from '@angular/core';
import * as signalR from "@aspnet/signalr";
import { UserService } from 'app/@core/data/users.service';
@Injectable()
export class SignalRService {
private url = baseurl+'&users='
public data;
private hubConnection: signalR.HubConnection;
constructor(private user: UserService) { }
public startConnection = () => {
let loggedInuser = this.user.getUserEmail();
let accessToken ="some token";
var options = {
transport: signalR.HttpTransportType.WebSockets,
logging: signalR.LogLevel.Trace,
accessTokenFactory: () => accessToken
};
this.hubConnection = new signalR.HubConnectionBuilder()
.withUrl(this.url + loggedInuser , options)
.build();
this.hubConnection.serverTimeoutInMilliseconds = 9999999999999;
this.hubConnection
.start()
.then(() => console.log('Connection started'))
.catch(err => {
console.log('url: ' + this.url + loggedInuser)
console.log('Error while starting connection: ', err)
})
}
public addTransferChartDataListener = () => {
this.hubConnection.on('AppNotifications', (data) => {
this.data = data;
console.log(data);
});
}
}
Когда я запускаю ngOninit () компонента уведомления, я получаю сообщение «Websocket не находится в открытом состоянии» в консоли.Где это я делаю неправильно?
Пример, которому я следовал, чтобы реализовать это: https://code -maze.com / netcore-signalr-angular /