来自Play Framework的JSON无法通过jQuery进行解析

时间:2012-02-06 06:46:27

标签: jquery json playframework

我已经使用Play Framework创建了一个Web服务。我使用 renderJSON 来生成对象列表的JSON格式。这是JSON的结果

[{"description":"Fashion shop","radius":0,"id":1},{"description":"Women Shop","radius":25,"id":2}]

现在,从客户端我使用JQuery1.4 $。getJSON()来使用该Web服务,这里是jQuery代码

$.getJSON("http://localhost:9000/data/1/1/json", function(data) {
    alert('');

    $.each(data, function(i,item){
      alert('test');        
    });
});

我也尝试将代码更改为使用 $。ajax 代替,这里是代码

$.ajax({
    type: "GET",
    url: "http://localhost:9000/mall/1/1/json",
    dataType:"json",    
    success:function(response){     
        alert("Details saved successfully!!!");
    },
    error:function (jqXHR, ajaxOptions, thrownError){
        alert(jqXHR.status);
        alert(ajaxOptions);
        alert(thrownError);
    }    
});

运行页面后,没有显示上面的警告,我怀疑使用JQuery的JSON来自Web服务的JSON语法不兼容。因为我在JQuery1.4中阅读http://api.jquery.com/jQuery.getJSON/,如果有任何语法错误,getJSON将无声地失败。

  • 我的代码有什么问题吗?
  • 是因为[],在第一个JSON的最后一个产生,它不能被jQuery JSON解析?

1 个答案:

答案 0 :(得分:1)

您是否手动尝试过该网址? (我的意思是在浏览器中)

第一个警报('')应该出现在任何情况下,所以数据不会通过,但它可能不是格式错误。

尝试使用.ajax并添加错误处理程序以查看返回的内容。 此外,如果您使用的是Chrome浏览器,请尝试查看您的请求是否正确送到服务器。