0

我尝试使用以下代码发出 HTTP GET 请求以从服务器获取一些数据。看起来,HTTP 请求根本没有到达服务器。我在这里错过了什么吗?

我也试过$.get(url, function(data){alert(data);}, "json").error(onHttpError)了。但没有运气。

$(document).ready(function()
{
     $.getJSON(url, onHttpSuccess).error(onHttpError);

    /**
    *onHttpSuccess
    */
    function onHttpSuccess( response )
    {

        alert("ASG Data Received:" + response);
    }

    /**
    *onHttpError
    */
    function onHttpError() 
    {
        var     errorMsg        = "HTTP Error!!!";

        $('#message').html(errorMsg);

        alert(errorMsg);
    }
});

请高手帮忙。谢谢!

丹麦

4

2 回答 2

1

不确定这是否是答案,但我遇到过很多 AJAX 调用工作正常的情况,但是从服务器返回的 JSON 没有被 jQuery 解析,因此整个操作似乎失败了。

通常原因是服务器没有指定响应的内容类型,但无论是什么原因,下一个故障排除步骤都是执行 $.get 请求而不指定“json”作为返回类型。尝试将“文本”指定为返回类型,并查看是否从服务器获得响应。

有时我什至幸运地接收到纯文本形式的服务器响应,然后在成功函数中手动运行 JSON.parse()。

于 2012-09-17T20:10:18.983 回答
0

是的。URL 已在此代码之前定义,它是一个有效的 URL。我的意思是,当我直接在浏览器中使用 url 并按回车键时,我看到,服务器接收到请求并发出响应。

于 2012-09-18T14:18:59.793 回答