ajax post外部php文件返回总是false

时间:2015-05-28 19:09:06

标签: php jquery ajax json post

我的ajax代码是:

<h:outputText value="#{}"/>

PHP代码是:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
    $.ajax({
            type: "GET",
            contentType: "application/json; charset=utf-8",
            url: "http://www.mp3-y.com/yt_output.json?vid=d9o8FCl4HOk",
            dataType: "json",
            success: function(msg) {
            alert("Success");
            },
            error: function(xhr, ajaxOptions, thrownError) {
                alert("error");
            }

        });
</script>

当我调用外部php文件时,我总是出错!

1 个答案:

答案 0 :(得分:2)

浏览器不允许您的javascript向另一个域(mp3-y.com)发出XHR调用,除非他们通过指定特定标头来允许它。研究“同源政策”。

如果您可以更改您的PHP代码,您可以添加此标头以允许任何人调用此API:

<?php
header('Access-Control-Allow-Origin: *');  
?>