使用带有IP地址的SignalR而不是计算机名称

时间:2016-08-01 21:30:23

标签: c# asp.net .net signalr

我有一个SignalR服务设置,可以在Windows服务中运行自托管。

当我输入此地址时:

  

http://mycomputer.mydomain.net:8789/signalr/signalr/negotiate

我在浏览器中显示了一些xml(用于协商)(显示正确地点击了服务。)

但是如果我输入这个地址(有mycomputer.mydomain.net的ip地址代替计算机名称):

  

http://10.92.15.6:8789/signalr/signalr/negotiate

或者

  

http://localhost:8789/signalr/signalr/negotiate

我收到此错误:

  

错误请求 - 主机名无效

     

HTTP错误400.请求主机名无效。

我也尝试过使用:

  

http://10.92.15.6.mydomain.net:8789/signalr/signalr/negotiate

但我得到:

  

无法访问此网站

     

无法找到10.92.15.6.mydomain.net的服务器DNS地址。

是否有能够使用IP地址而不是计算机名使SignalR工作?

1 个答案:

答案 0 :(得分:3)

我不得不改变我的创业公司:

string url = "http://" + machineName + ".mydomain.net:8789";
server = WebApp.Start<Startup>(url);

到此:

string url = "http://*:8789";
var startOptions = new StartOptions(url);
server = WebApp.Start<Startup>(startOptions);