Javascript 离子跨域问题

Javascript 离子跨域问题,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,大家好,我正在使用节点服务器进行数据提取,客户端是我的用于android应用程序(phonegap)的离子框架 因此,在我的电脑浏览器中,我点击localhost:8080/sessions(或10.129.86.47:8080/sessions),然后它将从服务器端返回json,但当我在安卓设备中以apk运行此ionic应用程序时,由于跨域,它将不会命中服务器 我的服务器和客户端应用程序都在同一个网络中 我喜欢2比3的解决方案,但它对我不起作用 我尝试的解决方案如下: 1) 首先,我尝试了爱奥

大家好,我正在使用
节点服务器
进行数据提取,客户端是我的
用于android应用程序(phonegap)的离子框架

因此,在我的电脑浏览器中,我点击
localhost:8080/sessions
(或
10.129.86.47:8080/sessions
),然后它将从服务器端返回
json
,但当我在安卓设备中以
apk
运行此ionic应用程序时,由于跨域,它将不会命中服务器

我的服务器和客户端应用程序都在同一个网络中

我喜欢2比3的解决方案,但它对我不起作用

我尝试的解决方案如下:

1) 首先,我尝试了爱奥尼亚代理,我为爱奥尼亚设置了代理,它会点击我的代理url,但不起作用。 示例:在ionic.project文件中,我输入了proxy

{ "name": "proxy-example", "app_id": "", "proxies": [ { "path": "/sessions", "proxyUrl": "http://10.129.86.47:8080/sessions" } ] } { “名称”:“代理示例”, “应用程序id”:“, “代理人”:[ { “路径”:“/会话”, “代理URL”:http://10.129.86.47:8080/sessions" } ] } 2) 第二次我尝试了白名单 例如:

<access origin="http://google.com" />
<access origin="https://google.com" />
<access origin="*" />    <!-- Don't block any requests -->

如果我使用
*
则表示不阻止任何请求,但对我无效

正如我所知,当phonegap android应用程序点击服务时,它会像点击url一样点击
file://and ....... 因此,它不会影响我的服务器表单应用程序,但默认情况下,Cordova允许跨域请求,但对我来说,它不起作用。

此问题通常只运行ionic serve

对于chrome,您可以避免修改项目并使用扩展来禁用CORS:

对于firefox:


您是否尝试过在服务器上设置CORS标头(访问控制允许标头、访问控制允许方法、访问控制允许来源)?是的,我完成了该部分,并且您的应用程序是否连接到网络?控制台日志中显示的确切错误是什么?是的,我连接到同一个网络,如果我从android浏览器中点击相同的url,那么服务器会用json响应,但如果我从android应用程序中点击相同的url,那么它将不起作用bcz当时我的url不是http,它将变为file://................. 我在电脑浏览器和android logcat上远程看到我的日志,实际上它并没有点击文件的url bcz://我想如果你有cordova 5.0.0,那么你需要CORS