Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ionic proxy在Ionic serve上工作,而不是在ios模拟器或设备上_Ios_Xcode_Cordova_Ionic - Fatal编程技术网

Ionic proxy在Ionic serve上工作,而不是在ios模拟器或设备上

Ionic proxy在Ionic serve上工作,而不是在ios模拟器或设备上,ios,xcode,cordova,ionic,Ios,Xcode,Cordova,Ionic,我有一个简单的网络服务在我的爱奥尼亚应用程序。。。它连接到远程服务器以执行简单任务 在爱奥尼亚中设置代理,如下所示: "proxies": [{ "path": "/api", "proxyUrl": "http://example.com/api" }] 并且调用的是“/api”。这些正确解析为http://example.com/api在本地主机浏览器中(使用ionic serve) 但在xcode中,url解析为: file:///api 我找不到这方面的

我有一个简单的网络服务在我的爱奥尼亚应用程序。。。它连接到远程服务器以执行简单任务

在爱奥尼亚中设置代理,如下所示:

  "proxies": [{
     "path": "/api",
     "proxyUrl": "http://example.com/api"
   }]
并且调用的是“/api”。这些正确解析为
http://example.com/api
在本地主机浏览器中(使用ionic serve)

但在xcode中,url解析为:

file:///api

我找不到这方面的具体信息。如何显示我正在呼叫ios?

这是预期的操作。ionic CLI代理仅用于ionic CLI serve或run命令。详情如下:

file:///api url不会触发角浏览器CORS飞行前选项调用,所以您应该没事


您遇到的任何其他CORS问题都将出现在服务器端。

我在Android设备上运行时遇到了相同的问题,解决方案很简单,需要注意的是,这里是我们用来处理CORS问题的代理,这只是与桌面浏览器相关的问题,因此,在使用离子服务时,我们需要代理,而不需要为其他设备使用代理。 在为任何目标平台构建时,我在服务中使用了以下条件来处理此问题,而不做任何进一步的代码更改

var APIUrl = '/myproxies';
if (this.platform.is('core') == true){
    APIUrl = '/myproxies';
}else{
    APIUrl = 'http://api.sample.com/SomeSampleAPIProvider';
}
this.http.get(APIUrl+"/Json").map(res => res.json()).subscribe(
    data => {.....

可以参考此信息了解此平台的使用详细信息

也许我需要根据设置端点??我也面临同样的问题。你有什么解决办法吗?告诉你,“核心”不适合我。我使用“mobileweb”:)它不是ios的解决方案。代理在ios中不工作。