WinForms 上的 SignalR - 无法连接到 127.0.0.1 以外的任何地址
SignalR on WinForms - Can't connect to any address aside from 127.0.0.1
我查了几个 articles/sources 但其中 none 帮助了我。
我有一个奇怪的问题,如果服务器本身在 http://127.0.0.1:8765
上配置为 运行 并且指向客户端,我只能连接到我的 SignalR 服务器(自托管,同一台计算机)到同一个地址。但是,如果我将任何 IP(例如 http://*:8765
上的服务器更改为 运行,并且客户端将其指向我的 IP 或计算机名,例如:http://192.168.0.1:8765
或 http://MyLocalPC:8765
,客户端在 await _hubConnection.Start()
后抛出异常,消息为:No connection could be made because the target machine actively refused it 192.168.0.1:8765
.
我尝试了以下步骤进行了一些实验,但其中 none 确实有所帮助:
- 将端口从 :8765 更改为我能想到的任何端口(显然未被占用),但没有用。
- 从一个网络更改为另一个网络,没有帮助。
- 在服务器和客户端计算机上禁用防火墙,不。
- 尝试在另一台计算机上 运行 客户端,同样的错误信息。
要显示代码片段,请参见下文:
服务器(_signalR 是一个 IDisposable 对象,_serverURI 是指定 http://____:__
的地方):
客户端(_hubConnection & _hostAddress 是不言自明的):
我正在使用 C# 7.0
与 Microsoft.AspNet.SignalR.Client 2.4.1.0
和 Microsoft.AspNet.SignalR.Core 2.4.1.0
我刚刚意识到这是因为 Visual Studio 不是 运行 管理员权限。 SignalR 需要管理权限才能 运行 其服务器在 localhost
或 127.0.0.1
以外的 IP 上。我无法完全意识到这一点,因为我现在大约 3 周更换笔记本电脑并且忘记在管理员模式下设置 运行ning Visual Studio。
我也找不到与此相关的任何错误的原因是出于某种原因我的代码中存在缺陷,我抑制了异常错误并仍然显示一条消息,就好像它工作正常一样。
我查了几个 articles/sources 但其中 none 帮助了我。
我有一个奇怪的问题,如果服务器本身在 http://127.0.0.1:8765
上配置为 运行 并且指向客户端,我只能连接到我的 SignalR 服务器(自托管,同一台计算机)到同一个地址。但是,如果我将任何 IP(例如 http://*:8765
上的服务器更改为 运行,并且客户端将其指向我的 IP 或计算机名,例如:http://192.168.0.1:8765
或 http://MyLocalPC:8765
,客户端在 await _hubConnection.Start()
后抛出异常,消息为:No connection could be made because the target machine actively refused it 192.168.0.1:8765
.
我尝试了以下步骤进行了一些实验,但其中 none 确实有所帮助:
- 将端口从 :8765 更改为我能想到的任何端口(显然未被占用),但没有用。
- 从一个网络更改为另一个网络,没有帮助。
- 在服务器和客户端计算机上禁用防火墙,不。
- 尝试在另一台计算机上 运行 客户端,同样的错误信息。
要显示代码片段,请参见下文:
服务器(_signalR 是一个 IDisposable 对象,_serverURI 是指定 http://____:__
的地方):
客户端(_hubConnection & _hostAddress 是不言自明的):
我正在使用 C# 7.0
与 Microsoft.AspNet.SignalR.Client 2.4.1.0
和 Microsoft.AspNet.SignalR.Core 2.4.1.0
我刚刚意识到这是因为 Visual Studio 不是 运行 管理员权限。 SignalR 需要管理权限才能 运行 其服务器在 localhost
或 127.0.0.1
以外的 IP 上。我无法完全意识到这一点,因为我现在大约 3 周更换笔记本电脑并且忘记在管理员模式下设置 运行ning Visual Studio。
我也找不到与此相关的任何错误的原因是出于某种原因我的代码中存在缺陷,我抑制了异常错误并仍然显示一条消息,就好像它工作正常一样。