使用Jquery错误的简单RESTful客户端

时间:2014-03-16 15:50:46

标签: jquery ajax web-services restful-url

我在jquery中的回调函数有问题。

让我们从头开始。我宁静的网络服务网址是这个

http://localhost :35055/new/webresources/generic/1

它会返回

  

{'name':'get','age':58}

和我的jquery与此Web服务进行交互

$(document).ready(function() {
    $.ajax({
        dataType: "json",
        url: '/webresources/generic/1',
        type: 'GET',
        data: ' ',
        success: function() {
            alert('PUT completed');
        }
    });
});

在jsp页面中链接

http://localhost:35055/new/tool.jsp 

没有提醒信息。请建议我一个方法,并请调试此代码。

这是宁静的网络服务

    @GET
    @Produces("application/json")
    public String getJson( @PathParam("venki") int empno ) {
        if(empno==1)
        {
      return "{'name':'get', 'age':'58' }";
        }
        return "{'name':'error', 'age':'58' }";
        }

}

2 个答案:

答案 0 :(得分:1)

如果您不熟悉使用Fiddler或内置的浏览器工具来检查网络流量,则可以通过$ .ajax调用的error属性公开错误。

$(document).ready(function() {
    $.ajax({
        dataType: "json",
        url: '/new/webresources/generic/1',
        type: 'GET',
        data: ' ',
        success: function() {
            alert('PUT completed');
        },
        error: function (xhr, ajaxOptions, thrownError) {
            alert(xhr.status);
            alert(thrownError);
          }
    });
});

答案 1 :(得分:0)

通过将url设置值更正为'/new/webresources/generic/1'来重试:

$.ajax({
  url: '/new/webresources/generic/1', 
  success: function() { alert('PUT completed'); }
});

根据您更新的Web服务实现的Java代码,您应该参考How correctly produce JSON by RESTful web service的答案来找到正确的Java代码。