无法从 Android Windows 模拟器 (Visual Studio 2015 / Xamarin) 访问本地主机



我知道我可以通过10.0.2.2:p ortnumber从Windows Android模拟器访问localhost(我需要从我在VS2015中开发的Xamarin应用程序访问这些Web API在localhost上运行的服务)。

我可以通过本地主机验证 Web API 的服务是否运行正常,但不能从 Android 模拟器验证,此屏幕截图总结了问题:

https://s23.postimg.org/calomedq3/localhost.jpg

根据我的研究,这应该有效。我错过了什么?非常感谢。

截图

好的,我设法使用"ngrok"访问Web API(ngrok允许您将本地计算机上运行的Web服务器暴露给Internet)。

https://ngrok.com/docs#expose

这可能不是理想的解决方案,但它似乎运行良好。提醒一下:我没有在我的开发计算机上使用 IIS 来托管 Web API,我使用 Kestrel 在默认 localhost:5000 中运行

作为旁注,http://169.254.80.80/似乎也可以工作,但它转到默认的 ISS 网站。因此,我可以通过设置一个新的IIS站点来重定向到Kestrel,或者只是吸收它并运行Web API的o ISS(尽管Kestrel的全部目的是避免ISS,因为Kestrel经过了大量优化)。无论如何,ngrok 似乎运行良好,所以我可能会把它留在那里,直到我有更多时间查看替代方案。

最终解决方案更新:

我设法通过 (MS) Android 模拟器上的 169.254.80.80 让它工作。

我无法仅通过 Kestrel 使其工作(这些是 .NET Core API),必须在端口 80 上的 IIS 中运行 Kestrel,这就可以了。

最新更新