【问题标题】:Access local host website from Android Device从 Android 设备访问本地主机网站
【发布时间】:2016-01-10 01:37:45
【问题描述】:

我在 asp.net mvc 中创建了 Web 服务应用程序,现在需要从连接在同一网络上的 Android 设备访问它。这是调试 webservies 应用程序所必需的。我没有静态IP。该站点使用 url http://localhost:27719 运行,但我无法从 Android 设备访问 localhost。我研究了网络并尝试了以下选项: 尝试更改 applicationhost.config 文件中的网站绑定信息。但是我在 applicationhost 文件中找不到我的 webstie 条目。 我也尝试在 Windows 防火墙中打开特定端口 27719。但这也行不通。 如果我在 IIS 上托管,我可以访问网站。但是当我从 Visual Studio 运行时,我需要访问它,以便我可以调试。 请建议我如何从连接到同一 wifi 网络的 Android 设备访问我机器上的网络服务。

【问题讨论】:

  • 您可以将调试器附加到 IIS,您不必使用 IIS Express。如果您在同一台机器上运行 IIS,只需执行附加到进程。如果 IIS 在另一台机器上,那么您需要获取适当版本的 Visual Studio Remote Debugger。
  • 感谢您提供有用的信息。你能否建议我该怎么做。我以前从来没有这样做过。任何相关链接都会有所帮助。再次感谢。
  • 在同一台机器上运行 IIS。很抱歉打扰,但你能告诉我在哪里可以找到附加到进程选项。我查看了项目属性并试图找到任何这样的选项。感谢您继续提供帮助。

标签: asp.net


【解决方案1】:

在 Visual Studio 窗口顶部的菜单中,转到“调试”,然后转到“附加到进程”(或者,按键盘上的 Control Alt P)。它会询问您要附加到哪个进程。选择 w3wp.exe 并按附加。然后,调试器将在 IIS 中连接到您的站点,当 Android 设备连接到该站点时,您将能够进行调试。

需要注意的是,您需要在 Android 设备上的 URL 中提供服务器的 IP,而不是“localhost”。

【讨论】:

  • 非常感谢您的大力支持。但不幸的是,我没有在进程列表中获得 w3wp.exe。实际上,我正在使用“ngrok.exe”来访问托管在 IIS 上的网站以从 Android 设备访问。可能这就是我没有获得 w3wp.exe 选项的原因。
  • 将您的 Android 设备连接到同一网络(通过 WiFi)并且不要使用 ngrok。如果 IIS 正在您的设备上运行,那么您应该会在站点运行时看到 w3wp.exe。如果您无法在同一网络上安装您的 Android 设备,请打开防火墙,以便将正确的端口转发到您的服务器,或者将您的站点托管在公共服务器上(您可以使用 Microsoft 的 Azure 免费托管,并调试也有)。
  • 我删除了 ngrok,但仍然看不到所需的选项。好像我在 IIS 中设置网站时遗漏了一些东西。但是现在尝试在 Azure 上托管。如果我被 Azure 选项卡住,将再次需要您的几分钟。谢谢
  • 非常感谢您所做的一切。最后我可以通过 IIS 选项进行调试。这是一个非常有价值的学习。我为此挣扎了5个小时。再次感谢您所做的一切。
猜你喜欢
  • 1970-01-01
  • 2015-06-06
  • 2020-10-10
  • 2018-08-08
  • 2018-12-25
  • 2021-06-13
  • 2022-01-23
  • 2012-04-10
  • 2020-08-28
相关资源
最近更新 更多