AJAX:加载内容跨域

时间:2015-12-03 06:47:45

标签: javascript jquery html ajax cross-domain

我正在尝试使用ajax加载html内容跨域。这是我的代码:

$.ajax({
            crossDomain: true,
            crossOrigin: true,
            url: 'http://en.wikipedia.org/wiki/Cross-origin_resource_sharing',
            type: "GET",
            dataType: "JSONP",
            success: function (data) {
                $("#divTest").html(data);
            },
            error: function (e) {

            }

        });

#divTest<div>,但是ajax始终返回空数据而没有错误消息。我尝试按照建议设置crossOrigin,crossDomain属性,但没有成功。有人能看,让我知道我错过了什么吗?

另外:有没有更好更安全的方法加载跨域内的HTML内容?

更新:在实现最新的jQuery之后,它获取状态代码200并认为它是成功的。

2 个答案:

答案 0 :(得分:0)

我使用Cross-Domain-Stuff进行了一些解决方法:

申请PHP文件并让它为您下载内容:

./dl.php?url=http://en.wikipedia.org/wiki/Cross-origin_resource_sharing

因为网页提供了内容,但不喜欢Framed或Ajax。

PHP脚本非常简单:

<?=file_get_contents($_GET["URL"]); ?>

当然你可以加上这个,但它也会起作用。

答案 1 :(得分:0)

您是否尝试过使用jquery Ajax的getJSON方法,这里有一些examples

但您的server也应允许跨域