javascript - Access-Control-Allow-Origin 不允许 Origin null。 :1 in android web view?

标签 javascript android jquery cordova

我收到这个错误:

XMLHttpRequest cannot load http://192.168.1.33:8080/ws/target. Origin null is not allowed by Access-Control-Allow-Origin.:1

当我试图在 webview 上加载 html 页面时。我输入这样的脚本标签。

<script src="http://192.168.1.33:8080/target/target-script-min.js#anonymous"></script>

实际上,当我尝试在 weinre 上调试我的代码时会出现此错误。你能告诉我如何消除这个错误吗?

有没有办法消除这个错误? 但是当我制作 phonegap 项目并使用相同的导入脚本行加载相同的 HTML 时。

<script src="http://192.168.1.33:8080/target/target-script-min.js#anonymous"></script>

用这条线

我可以在 winre 上调试我的文件。

你能告诉我在加载到 webview 时如何消除这个错误吗?

最佳答案

出现此问题的原因是浏览器中的 CORS 策略。为了消除错误,您通常必须将服务器端更改为您碰巧正在使用的任何服务器。您必须添加 header :

Access-Control-Allow-Origin: *

参见 here有关如何针对特定后端框架执行此操作的更多信息。

也就是说,由于您使用的是 cordova,因此您还可以像这样覆盖浏览器的行为:

if (Build.VERSION.SDK_INT >= VERSION_CODES.JELLY_BEAN) {
    wv.getSettings().setAllowUniversalAccessFromFileURLs(true);
}

如果您使用的是 WebView 。如果你不想直接弄乱 webview 你也可以设置

<access uri="*" subdomains="true" />

在你的res/xml/cordova.xml .更多详情请看这里http://docs.phonegap.com/en/1.9.0/guide_whitelist_index.md.html

关于javascript - Access-Control-Allow-Origin 不允许 Origin null。 :1 in android web view?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25118331/

相关文章:

android - 仿真器和模拟器之间有什么区别吗?

java - ActionBar 出现在第一个 Activity 中,但未出现在第二个 Activity 中

javascript - 从父页面更改 iframe 中 div 的背景颜色不起作用

javascript - 使用 jQuery deferred、javascript 确定循环中触发的可变数量异步进程的分辨率

javascript - 单击选项卡时关闭滑动菜单

javascript - WebStorm 调试器在断点处将 React 组件内的局部变量视为 'undefined',尽管它有一个值

android - 文件资源检查为红色,尽管 R 有效

javascript - 如何在悬停时显示嵌套的 div? --JQuery初学者

javascript - Play Framework : javascripts in scala code?

javascript - 为什么两次调用函数的结果不同?