0

我正在尝试通过 jquery 向基于 REST 的 API(基于 JAX-RS/Jersey 的 API)发送获取请求。正如我在日志中看到的那样,请求成功到达 API,在 firebug 上我看到 200 ok 响应

下面是我的基于 jquery 的客户端

$(document).ready(function(){
    $("button").click(function(){
        $.ajax({
            type: 'GET',
            url: 'http://mtnlp.com:8080/restdemo/resources/employee/1',
            dataType: "json",
            success: function(data){
                alert("success");
            },
            error: function(xhr){
               alert("error"+xhr.status);
            }
        });
    });
});

但 xhr.status 为 0。

我的资源是

@GET
@Produces(MediaType.APPLICATION_JSON)
public String getJson( @PathParam("empno") int empno) {  
    JSONObject jObject = new JSONObject();
    System.out.println("someone calls me");
     switch(empno) {
        case 1 :
          jObject.put("name", "George Koch");
          jObject.put("age", "58");
          break;
      case 2:
          jObject.put("name", "Peter");
          jObject.put("age", "50");
          break;
      default:
          jObject.put("name", "Unknown");
          jObject.put("age", "-1");


  } // end of switch

  return jObject.toString();
} 

当我使用基于球衣的客户端时,它工作正常。但是对于基于 jquery 的客户端,我面临上述问题。

请在下面找到 HTTP 获取请求的请求和响应标头

响应标头

Content-Type: application/json
Date: Tue, 04 Jun 2013 06:38:12 GMT
Server: Apache-Coyote/1.1
Transfer-Encoding: chunked

请求标头

Accept: application/json, text/javascript, */*; q=0.01
Accept-Encoding: gzip, deflate Accept-Language  en-US,en;q=0.5
Host: localhost:8080
Origin: null
User-Agent: Mozilla/5.0 (Windows NT5.1; rv:19.0) Gecko/20100101 Firefox/19.0
4

0 回答 0