我了解我可以通过 10.0.2.2:portnumber 从Windows Android模拟器访问 localhost (我需要从Xamarin应用程序访问在localhost上运行的这些Web API服务我在VS2015开发。)
我可以通过localhost验证Web API的服务运行正常但不是来自Android模拟器,此屏幕截图总结了问题:
https://s23.postimg.org/calomedq3/localhost.jpg
根据我的研究,这应该有效。我错过了什么?非常感谢。
答案 0 :(得分:2)
好的,我设法使用'ngrok'访问Web API(ngrok允许您将在本地计算机上运行的Web服务器公开到Internet)。
这可能不是理想的解决方案,但它似乎运作良好。提醒一下:我没有在我的开发机器上使用IIS来托管Web API,我使用在默认localhost:5000运行的Kestrel
作为旁注,http://169.254.80.80/似乎确实有效,但它会进入默认的ISS网站。因此,我可以通过设置一个重定向到Kestrel的新IIS站点或简单地将其吸收并运行Web API的ISS来使其工作(尽管Kestrel的重点是避免ISS,因为Kestrel已经过大量优化)。无论如何,ngrok似乎运作良好所以我可能会留下它,直到我有更多的时间来看待替代品。
答案 1 :(得分:0)
最终解决方案更新:
我设法通过(MS)Android模拟器上的169.254.80.80工作。
我无法通过Kestrel使其工作(这些是.NET Core API),必须在端口80上的IIS中运行Kestrel并且这样做。