net :: ERR_CONNECTION_REFUSED离子

Ikr*_* Bk 7 android asp.net-web-api cordova ionic-framework

我正在使用离子开发应用程序,我可以从我的webApi服务器检索数据并在导航器上显示它们ionic serve但是当我尝试在模拟器上执行它时:ionic run android -l -c我收到此错误:net::ERR_CONNECTION_REFUSED

在此输入图像描述

奇怪的是$ scope包含所需的数据,我可以记录它们.

Mar*_*nte 7

从您的模拟器(并且 Ionic 应用程序在模拟器中运行)中,http://localhost不再指您的计算机,而是指模拟设备。了解这一点,这http://localhost:26309/api/User/getAll/不是您设备中的有效端点,因此请求失败。

要解决这个问题,您有两种选择:

第一个选项是在 Ionic 应用程序中创建一个简单的代理。编辑你的ionic.config.json如下:

{
  "name": "appname",
  ...
  "proxies": [
    {
      "path": "/localhost",
      "proxyUrl": "http://localhost:26309"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

现在,当从 Ionic 应用程序发出请求时,只需编写/localhost/api/User/getAll/即可工作。

第二个选项是使用计算机的私有 IP 作为端点域。http://localhost:26309所以你可以使用而不是使用http://192.168.X.Y:26309


Dan*_*ltz 6

Android设备/模拟器上的localhost很可能无法解析为开发计算机/服务器的IP.Localhost可能指向设备/模拟器本身.你能不能点击机器的实际IP地址?或者您可以在云中的某个位置托管Web服务并尝试吗?

谢谢,丹