【发布时间】:2019-03-06 07:51:15
【问题描述】:
我有一个 Xamarin Forms 应用程序(Android 和 iOS,而不是 UWP),它访问了我创建的 DotNetCore 2.1 API(在 http://localhost:5000 下运行)。所有这些都是使用 Visual Studio 2017 开发的。
我可以使用地址 http://10.0.2.2:5000 调试 Android 端,该地址在 Android 端转换为“localhost”。所以我可以从 Android 模拟器中很好地访问我的 API。
问题出在 iOS 端。
iOS 模拟器确实在 Mac 上运行,因此无法看到我的 Windows 机器运行 API。
如何配置我的 Windows/Mac 机器以便能够访问我的本地 API?
我可以从 Mac 上 ping 我的 Windows 机器,但目前仅此而已。
【问题讨论】:
-
假设两台机器是同一个本地网络/子网,在你的代码中,使用你的 DotNetCore 服务器的本地网络地址(即你的 Windows Visual Studio 主机 IP 地址(
ipconfigit,或者打开网络属性以查找与您的 macOS 设备位于同一子网的 NIC 的当前 IP 地址等...)然后使用该 IP 地址在启动期间绑定您的 DotNetCore 服务器,以便它监听该子集入站流量请求 -
在 Windows PC 上的 Visual Studio 2017 中打开 Xamarin Form 项目并与 Mac 配对。看看能不能和mac配对成功。
-
是的,我可以很好地与 Mac 配对(我可以在模拟器中构建和调试)。我通过使用我机器的本地 IP 来修复它,并为传入请求解除阻塞我正在使用的端口(在本例中为 5000)。
标签: xamarin xamarin.forms .net-core