【发布时间】:2017-11-24 00:30:04
【问题描述】:
我对 Angular 很陌生,请执行这个可能很愚蠢的问题。
我正在尝试在 localhost:5000 上托管一个 asp.net Kestrel 服务器,它将为进度报告提供 SignalR 服务。 我使用 Angular 5 创建的网站应该连接到此(网站将通过 localhost:4200 调用,或仅通过打开文件://.....etc../index.html)。
我已经通过 NPM 安装了包 @aspnet/signalr-client。我没有对我的项目进行任何其他手动修改(没有 polyfill 或其他可能存在的东西)。
然后我编辑了我的主要组件的 .TS 以包含
import { HubConnection } from '@aspnet/signalr-client';
到目前为止仍然可以正常工作。但后来我添加了一个私有变量
private _hubConnection: HubConnection;
在 ngOnInit() 函数中,我正在调用
this._hubConnection = new HubConnection('/progress');
现在,访问该网站将在 Internet Explorer 11 中引发错误,即错误:语法错误。如果我正确阅读调试器,它似乎在 signalr-client/dist/src/HttpContext.js 中的某些代码中,例如
eval("\n// Copyright (c) .NET Foundation. All rights reserved.\n// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) {
... etc ...
我完全不知道是什么原因造成的。我是否需要对我的项目进行任何其他手动修改,包括任何其他文件等? 难道是它无法连接到我的 SignalR 进度服务器,因此引发了这个奇怪的错误或其他问题?
谢谢
【问题讨论】:
-
在更新
HubConnection时,您是否尝试过传递 SignalR 集线器的完整 URL,而不仅仅是'/progress'?
标签: angular signalr signalr.client angular5