$ .ajax请求无法使用Cordova 7.0.1 Android应用

时间:2017-09-09 13:41:31

标签: android jquery ajax cordova

我刚从Cordova 7.0.1应用程序中移除cordova-plugin-crosswalk-webview(一切正常,应用程序已在Play商店发布),因为它已停止使用。

我尝试在手机上构建并运行应用程序而不更改我的代码(刚删除Crosswalk),我发现$.ajax调用无效。 问题发生在" debug"和"发布" (签名)应用程序版本。

我尝试了以下事项:

  • 我已经有了#cordova-plugin-whitelist"最新版本,也试图重新安装
  • config.xml

    中设置这些内容
    • <access origin="*" />
    • <allow-navigation href="*" />
    • <allow-intent href="*" />
  • 添加了任何类型的<meta http-equiv="Content-Security-Policy" ... >

没有任何作用。

如果重要,我会使用&#34; Slim PHP Framework&#34;对于我的API,有一个中间件可以返回:

...
$response = $next($request, $response);
return $response
       ->withHeader('Access-Control-Allow-Origin', '*')
       ->withHeader('Content-type', 'application/json')
       ->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization')
       ->withHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');

正如我所说,它在使用Crosswalk时过去很好。

还有其他建议可以解决我的问题吗?

您是否认为可能存在任何人行横道,我错过了我需要删除/更改?

修改

我也使用&#34; ripple emulator&#34;从桌面测试我的应用程序,一切都在我的浏览器中工作。 所以我从我的代码中复制了一个正在运行的AJAX调用,并试图在我的应用程序运行时从调试控制台运行它来检查我的手机上的结果,当然它不起作用。这是输出(我刚删除了URL):

Image

此外,这不起作用:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://google.com', true);
xhr.onload = function(){
    console.log(xhr);
};
xhr.send();

0 个答案:

没有答案