允许 Android WebView 的跨域请求

Posted

技术标签:

【中文标题】允许 Android WebView 的跨域请求【英文标题】:Allowing cross-origin requests for Android WebView 【发布时间】:2012-08-01 21:35:33 【问题描述】:

我正在尝试从托管在 www.myURL.com/somefolder/runScript 的服务器中检索一些数据。我在 www.myURL.com 上提供一个网页,该网页恰好与端点在同一台服务器上以检索我的数据。但是,我在 Eclipse 中收到此错误:

08-03 19:47:57.210: E/Web Console(27287): XMLHttpRequest cannot load http:myendpoint Origin http://www.myURL.com is not allowed by Access-Control-Allow-Origin. at null:1

有没有人成功地允许在 android webview 上进行跨域请求?非常感谢!

【问题讨论】:

我已经尝试过 JSONP,但我真的不喜欢您无法从服务器接收任何类型的调试语句... 我可以使用 javascriptinerface 来实现吗? 你到底在哪里执行这个???(android模拟器???) 【参考方案1】:

您是否在服务器上设置了正确的标头 (Access-Control-Allow-Origin)?

看看https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS。

【讨论】:

【参考方案2】:

我不知道你到底想做什么。要解析html文档吗?

你可以看看 jsoup.org 上的 jsoup

【讨论】:

以上是关于允许 Android WebView 的跨域请求的主要内容,如果未能解决你的问题,请参考以下文章

AJAX的跨域与JSONP

怎么解决服务器间的跨域问题

在ASP.NET 5应用程序中的跨域请求功能详解

接口出现405跨域错误

nginx配置允许跨域请求

碰到的一个跨域问题:自定义header,接口请求不通