c# - Android 模拟器没有连接到 localhost api

标签 c# android api http xamarin

我有一个 Xamarin 应用程序和本地主机 API。我正在尝试从应用程序连接到 API,但找不到它。我编辑了我的 applicationhost.config 文件,并在调用中尝试了 localhost10.0.2.2 和我的 IP 地址,但它不起作用。

那么,如何配置简单的 API 访问? (API 本身运行良好)

最佳答案

EmulatorSimulator 连接到 localhost API 有一个简单的解决方法。

Download third party software NgRok for Windows在您 PC 的任何特定位置。它仅包含一个名为 ngrok.exe 的可执行文件(您无需安装它)。

现在在您首选的浏览器上执行您的服务。请按照以下步骤操作。

  • 在命令提示符下打开您的 ngrok.exe 文件路径

enter image description here

  • 使用前缀 ngrok http --host-header=rewrite 保留您的服务 URL(从您的浏览器获取)并按回车键。

enter image description here

  • 现在转到执行服务的浏览器打开新选项卡并键入 localhost:4040 然后按 enter --> 转到 status 在那里你会找到你的您可以在移动应用程序中使用的公共(public)网址。

enter image description here

注意:Url 结构应该是这样的 public const string BaseUri = "https://8c56892f.ngrok.io/"; 最后是 /。尽量不要附加不必要的 /

好处

  1. 您可以将服务从一个 Visual Studio 调试到另一个。

  2. 您的 url 将处于 Activity 状态,直到您关闭命令提示符。

  3. 在浏览器或命令提示符中跟踪您的请求状态,例如 OkNot found 等。

有关更多信息,请访问此 https://www.c-sharpcorner.com/article/exposing-local-web-server-to-internet-using-ngrok/

希望对你有帮助。

关于c# - Android 模拟器没有连接到 localhost api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52618330/

相关文章:

c# - 为什么我的类数组元素表现得像一个指针? (C#)

c# - 如何在 C# 中正确排队和执行具有可变开始时间的任务?

android - Android 中的本地主机

api - 谷歌云平台 : List available projects using api

rest - 无法理解如何将帖子发送到 Lingvo API

javascript - 客户端缓存(使用 JavaScript)

c# - Asp.net MVC - 在 cshtml 页面中创建环境特定的元标记

c# - 正在处理时如何放置加载图像?

android - 将Firebase添加到flutter项目中,破坏了项目

java - 如何在for循环中动态调用Java Bean的方法