我使用Owin和topshelf创建了一个Windows服务.
该应用程序是一个侦听端口9000的WebAPI,我已在防火墙规则中允许此端口.
当我在Windows Server 2008上执行.exe文件时,我可以在本地使用它(localhost:9000)
但是当我尝试从其他机器访问它时,我收到以下错误消息:
HTTP Error 400. The request hostname is invalid
Run Code Online (Sandbox Code Playgroud)
我错过了什么?请帮忙.
Moh*_*iba 14
这解决了我的问题,这对你来说可能是非常明显的,但对我来说并不是那么多.
而不是使用此代码:
WebApp.Start("http://localhost:8080/");
Run Code Online (Sandbox Code Playgroud)
我不得不用这个:
WebApp.Start("http://*:8080/");
Run Code Online (Sandbox Code Playgroud)
当然不应该忘记在防火墙中打开端口.
也许是远程计算机上的主机条目?请记住,“localhost”指向当前计算机本身。您可能需要设置本地 IIS 服务器,将 WebApi 部署到该服务器,以便其他计算机可以看到它。
顺便说一句,您的 ASP.Net 开发服务器(Visual Studio 的内置服务器)无法为 localhost 以外的其他页面提供服务,因此您可能需要使用 Fiddler 或 Cassini 之类的东西来欺骗它,以在调试期间充当路由。
这里有一些相关的答案: Can I access ASP.NET Development server in an Intranet?
我希望它能帮助你
| 归档时间: |
|
| 查看次数: |
1640 次 |
| 最近记录: |