我正在使用 jax-rs 编写一个基本的 Web 服务。我正在使用以下 JQuery 测试应用程序。我可以使用 GET 参数很好地访问参数,但是当我使用 POST 时,它会失败。我使用以下 JQuery 来测试仅将“POST”切换为“GET”。
$.ajax({
type: "POST",
url: "http://localhost:8080/MyWebService/",
data: 'text=this is text',
dataType: 'jsonp',
success: function(data){
console.log(data);
},
error: function(){alert('failure');}
});
java端如下所示。请记住,我对 get 部分没有任何问题。
@GET
public Response getWork(@QueryParam("callback") String callbackName, @QueryParam("text") String searchText,
@Context HttpServletResponse response, @Context HttpServletRequest request) throws JsonGenerationException,
JsonMappingException, IOException {
System.out.println(searchText);
return work(callbackName, searchText, response, request);
}
@POST
public Response postWork(@FormParam("callback") String callbackName, @FormParam("text") String searchText,
@Context HttpServletResponse response, @Context HttpServletRequest request) throws JsonGenerationException,
JsonMappingException, IOException {
System.out.println(searchText);
return work(callbackName, searchText, response, request);
}
使用 GET 时,它打印文本,但使用 POST 时,它打印 null。需要什么才能使用 POST 方法访问参数?