gpt4 book ai didi

azure - 从 Android 设备连接到本地主机并与之同步无法正常工作

转载 作者:行者123 更新时间:2023-12-03 03:10:31 26 4
gpt4 key购买 nike

我正在使用 Azure 移动应用程序快速入门 ToDoList 示例来开始使用跨平台应用程序。我已经设置了后端,它正在本地主机上运行 - 我可以使用 Swagger 来访问它并获取帖子等正在运行。

然后,我设置客户端应用程序 (Xamarin.Forms)。我正在 Android 设备上运行客户端应用程序,当后端位于 Azure 中时,一切都运行良好,包括脱机同步元素。问题是我现在必须在本地工作,但在本地主机上运行时无法与数据库同步。

起初,调试器给我一个“连接被拒绝”错误,所以我按照步骤 here 进行操作。以及其他各种来源,包括使用我的笔记本电脑 IP 和设置防火墙规则、在 IIS 管理器和 applicationhost.config 中添加到端口的绑定(bind),以及更改 Constants.cs 中的 ApplicationURL。

现在,我没有收到连接拒绝错误,但数据没有到达数据库,尽管平板电脑上的 localdb 似乎正在工作 - 当我尝试与数据库同步或从数据库同步时,它失败了。

不太熟悉网络,但可能需要注意的是,当我在浏览器中使用 localhost:portnum/tables/todoitem 时,我会得到 XML 格式的结果,但当我使用 192.168.0.10:portnum/tables/todoitem 时,我会得到“Bad”请求 - 主机名无效”。

最佳答案

默认情况下,您的移动应用程序 .NET 服务器后端应用程序将在 IIS Express 中运行。当使用在网络上的其他设备或 Hyper-V 中的虚拟机(例如 Windows Phone 模拟器)中运行的客户端应用程序进行调试时,会出现问题。 IIS Express 将在 localhost 下托管您的服务器应用程序,这使得其他设备或虚拟机无法访问该应用程序。在 Windows Phone 模拟器上运行的客户端应用程序对于 localhost 具有不同的含义。 Visual Studio 模拟器(在 Hyper-V 中运行)和 Google 模拟器也是如此。

将计算机配置为在 IIS 上托管移动应用程序 .NET 服务器后端应用程序会更简单,因为这允许您控制服务器应用程序与 IP 地址(而不是本地主机)的绑定(bind)。

有关这方面的信息,请参阅:https://github.com/Azure/azure-mobile-apps-net-server/wiki/Local-development-and-debugging-the-Mobile-App-.NET-server-backend

关于azure - 从 Android 设备连接到本地主机并与之同步无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38896724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com