我可以通过AJAX从外部页面加载数据吗?

int*_*nt3 8 javascript ajax jquery

我刚开始学习jQuery和AJAX.我可以将本地页面(在我的磁盘上)加载到div中jQuery.load(),但外部站点似乎不起作用.我甚至使用wireshark来检查数据是否从服务器发送(它是).示例代码如下:

<html>
<head>
    <script src='jquery-1.4.2.min.js'></script>
    <script>
        $(document).ready(function() {
            // $('#test').load('localpage.htm'); works!
            $('#test').load('http://www.google.com/'); // does not work!
        });
    </script>
</head>
<body>
<div id='test'></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

首先可以做到这一点吗?如果是这样,怎么样?

Phi*_*off 5

您不能对与脚本来源不同的域执行 ajax 调用。

要执行此操作,您必须在自己的页面上使用代理页面,例如:

<script>
    $(document).ready(function() {
        $('#test').load('ajax/getgoogle.php');
    });
</script>
Run Code Online (Sandbox Code Playgroud)

获取谷歌.php:

<?php

echo file_get_contents("http://www.google.com/");

?>
Run Code Online (Sandbox Code Playgroud)


Hoo*_*ing 3

开箱即用:没有。这是一个安全问题。不过,有一些不同 解决方法