【问题标题】:Consuming ASP.NET Web Api service from other computer in LAN从局域网中的其他计算机使用 ASP.NET Web Api 服务
【发布时间】:2012-09-09 17:54:34
【问题描述】:

我对此进行了谷歌搜索,但找不到任何可以解决我的问题的内容。 (我是 ASP.NET Web Api 的新手)

我构建了一个 ASP.NET Web Api,当我在本地机器上从 Visual Studio 运行它时,一切都运行良好。 (在这两种情况下,当我使用“使用 Visual Studio 开发服务器”和“使用本地 IIS Web 服务器”时,它都可以正常工作)。

问题是当我尝试从局域网中的其他计算机调用此 Web 服务时它不起作用(类似于:“http://192.168.2.103:8080/api/blabla”)。 (1) 使用“使用 Visual Studio 开发服务器” - 客户端超时完成。 (2) 使用“使用本地 IIS Web 服务器” - 客户端收到 HTTP ERROR 400 “Bad Request - Invalid Hostname”(当我使用端口 8080 并向 Windows 防火墙添加规则以通过此端口时)。

我还尝试完全禁用 Windows 防火墙、防病毒软件,但没有帮助。

我在 WCF 中实现了其他 http web 服务项目,一切正常,我可以从局域网中的其他计算机进行通信。

注意! (1)另一台电脑不是windows....如果很重要) (2) 到计算机/地址之间的 ping 工作正常。

我将非常感谢任何帮助。 谢谢,

海姆

【问题讨论】:

  • 在本地计算机上使用192.168.2.103:8080/api/blabla而不是localhost会发生什么?
  • 如果我使用 192.168.2.103:8080/api/blabla 我会遇到同样的问题,HTTP ERROR 400 "Bad Request - Invalid Hostname"。
  • @Haim 我也面临同样的问题....你找到解决方案了吗?

标签: asp.net-web-api


【解决方案1】:

(1) Visual Studio 开发服务器不支持远程连接。 See 了解更多详情。人们尝试在这些情况下设置反向代理等变通方法。

(2) 通过“本地 IIS 网络服务器”,我假设您使用的是 IIS Express。不幸的是,IIS Express 默认不允许远程连接。要允许远程连接,请参阅question

【讨论】:

    猜你喜欢
    • 2013-02-24
    • 2012-12-11
    • 2021-01-28
    • 2017-04-08
    • 2018-09-10
    • 2019-01-16
    • 1970-01-01
    • 2011-10-18
    • 2012-05-28
    相关资源
    最近更新 更多