使用Jquery获取JSON时出错

时间:2013-03-06 11:08:21

标签: jquery ajax json

我正在开展一个学术项目。有一个JAVA后端在另一台服务器上为我创建一个JSON响应。 JSON是完美的,我可以从任何其他节点的浏览器中看到它。

我的工作是解析这个JSON并以HTML格式显示。

这是我正在使用的一段代码:

    function sendQueryToBackend () {
    var strURL = "http://10.2.4.234:8080/RestSimpleApp/rest/BingSearch?q=india&callback"; // this is not my system
    alert("Searching...MAIN");
    $.ajax({
        url:strURL,
        async:false,
        type:"GET",
        success: function(result)
           {
                alert("It works!" ); // This alert never comes up
           }
    });
}

在函数中,我只是想知道它是否接收到数据。 这个警报永远不会出现。

但是,如果我使用的是具有相同JSON格式的本地文件,则它可以正常工作,我可以解析它以按照我的意愿显示。我哪里错了?

1 个答案:

答案 0 :(得分:0)

听起来像是一个跨源资源共享问题。

如果资源使用cookie,您需要将其添加到ajax调用:

'xhrFields': {'withCredentials': true},

您还应检查资源是否具有相应的Access-Control-Allow-Origin: *标头,并且可能还需要Access-Control-Allow-Headers: Content-Type。由于它不是您的脚本,因此项目制作者必须在必要时进行修复。

最后,如果涉及重定向(即在显示内容之前在地址栏中键入该URL重定向到另一个,即使只是更改案例),您还需要将URL更改为 final < / em> URL。