【发布时间】:2017-02-05 12:50:31
【问题描述】:
我有一个简单的 .net core web api,只需一个操作:
[Route("[action]")]
public class APIController : Controller
{
// GET api/values
[HttpGet]
public string Ping()
{
return DateTime.Now.ToString();
}
}
如果我通过 dotnet run 运行它,我会得到 p>
Hosting environment: Production
Content root path: C:\Users\xxx\Documents\Visual Studio 2015\Projects\SelfHostTest\src\SelfHostTest
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.
转到浏览器并输入http://localhost:5000/ping 会成功返回当前时间。 但是 转到远程计算机(同一 LAN)并尝试通过 http://odin:5000/ping 访问服务会导致 404 错误。 (Odin 是通过 dotnet run 在控制台中运行 web api 的机器的名称。
服务器(和客户端!)防火墙均已关闭。我可以成功ping“odin”。
任何想法我在这里缺少什么简单的步骤。我在家里和工作中都试过了,但没有成功。
【问题讨论】:
-
如果您尝试使用“odin”的 IP 地址会发生什么?例如:192.111.11.2:5000?可能是this可以帮助你。
-
在服务器和客户端都尝试了同样的事情 192.168.1.2 。 127.0.0.1 可以在服务器上运行!
标签: c# asp.net-web-api .net-core self-hosting