我在本地网络上的计算机上运行了Web服务。我希望能够通过本地IP连接到它们,而不是通过localhost
与它们连接 - 在这种情况下192.168.1.5
。一旦我能做到这一点,我就会知道网络上的其他设备也可以使用这些Web服务(特别是我的Android手机)。
在我Visual Studio 2013
的项目设置中(我正在使用IIS Express),如果我将项目网址设置为http://testdomain.com:52252
并在我的主机文件中设置192.168.1.5 testdomain.com
的行,那么连接到testdomain.com:52252/testservices.asmx
工作得很好。但是,当我将项目网址更改为http://192.168.1.5:52252/
并直接连接到192.168.1.5:52252/testservices.asmx
时,它会返回Bad Request - Invalid Hostname. HTTP Error 400. The request hostname is invalid.
在本地网络上测试Web服务的有效方法是什么?我需要开发和测试Web服务并从Android设备测试它们,但我暂时不允许在实时服务器上开发/测试它们。这有什么解决方案吗?
我在线寻找解决方案,但一直找不到。我发现很难相信这个问题没有一个共同的解决方案 - 当然人们必须有办法在不托管服务器或通过localhost
连接的情况下测试Web服务吗?
答案 0 :(得分:0)
我真的看到有两条路线可供选择
1)将每个域路由到自己的ip
的vlan2)创建x个虚拟机并模拟流量
答案 1 :(得分:0)
关键是编辑名为applicationhost.config的IIS Express文件。像localhost一样添加绑定,但使用您的IP地址。请注意,每个VS2012项目都有一个绑定配置,因此请将其放在您正在使用的项目中。
然后右键单击系统托盘中的IIS Express并退出。退出VS,然后使用“以管理员身份运行”打开它。应该这样做。
<bindings>
<binding protocol="http" bindingInformation="*:24486:localhost" />
<binding protocol="http" bindingInformation="*:24486:192.168.4.104" />
</bindings>