我正在编写一个 PhoneGap 应用程序,该应用程序具有用于本地导航的 HTML 和 Javascript,它应该从 Web 加载内容。
我无法直接控制内容服务器,因此我无法在那里进行任何更改。
我想进入我的应用程序的内容基于普通的 HTML 网站,所以我想获得例如 da div 中的文本。
到目前为止我有什么:
<script type="text/javascript">
var url = "http://example.org/"
updateGadget();
inervalID = setInterval("updateGadget();", 60 * 1000);
function updateGadget() {
$(document).ready(function () {
$.ajax(url, {}, function (response, status, xml) {
console.log(response);
});
});
}
</script>
问题是它不起作用,它没有显示任何内容。
开发是使用 Web 服务器,而不是直接使用 PhoneGap。当我在 Google Chrome 中打开网站时,它显示错误:
XMLHttpRequest cannot load http://example.org Origin http://example.org is not allowed by Access-Control-Allow-Origin.
在控制台中。
我发现我应该使用这个 header :
header('Access-Control-Allow-Origin: *');
我应该在哪里使用它,如果我把它放在我的 HTML (PHP) 文件的顶部,它什么都不做,在我想解析的服务器上我不能把它放上去。
问题出在哪里,如何解决? 还是有更好的方法来做到这一点? 如果可能的话,我想直接在 PhoneGap 应用程序上使用它,而无需第二个服务器后端。
最佳答案
这stackoverflow问题有适合您的解决方案。
基本思路是在 http://whateverorigin.org/get?url=webpage-you-wish-to-scrap.com
发出 $.get
请求
关于javascript - Phonegap 解析外部 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17108491/