如何从jQuery调用web服务
我想从jQuery调用Web服务。我该怎么做呢?您可以像其他请求一样发出AJAX请求:如何从jQuery调用web服务,jquery,web-services,Jquery,Web Services,我想从jQuery调用Web服务。我该怎么做呢?您可以像其他请求一样发出AJAX请求: $.ajax( { type:'Get', url:'http://mysite.com/mywebservice', success:function(data) { alert(data); } }) 编辑: OP并不打算使用跨域请求,但jQuery从v1.5开始就支持JSONP。具体请参见crossDomain参数 常规的jQueryAjax请求不会跨站点工作,因此如果您想要查询远程RESTful
$.ajax( {
type:'Get',
url:'http://mysite.com/mywebservice',
success:function(data) {
alert(data);
}
})
编辑:
OP并不打算使用跨域请求,但jQuery从v1.5开始就支持JSONP。具体请参见crossDomain
参数
常规的jQueryAjax请求不会跨站点工作,因此如果您想要查询远程RESTfulWeb服务,您可能需要在服务器上创建一个代理,并使用jQueryGet请求查询该代理。有关示例,请参见
如果它是一个SOAP web服务,您可能需要尝试。我在博客中介绍了如何使用jQuery使用WCF服务:
这篇文章展示了如何直接用javascript创建服务代理。万一人们在Marwan Aouida的回答后遇到了像我这样的问题。。。代码有一个小的输入错误。它不是说“success”,而是说“success”更改拼写,代码工作正常。在Java中,此返回值在jQuery Ajax GET中失败:
return Response.status(200).entity(pojoObj).build();
但这是可行的:
ResponseBuilder rb = Response.status(200).entity(pojoObj);
return rb.header("Access-Control-Allow-Origin", "*").build();
----
全班:
@Path("/password")
public class PasswordStorage {
@GET
@Produces({ MediaType.APPLICATION_JSON })
public Response getRole() {
Contact pojoObj= new Contact();
pojoObj.setRole("manager");
ResponseBuilder rb = Response.status(200).entity(pojoObj);
return rb.header("Access-Control-Allow-Origin", "*").build();
//Fails jQuery: return Response.status(200).entity(pojoObj).build();
}
}
请更正onSuccess处理程序的拼写。。。从成功到成功那很好,但是当你需要交叉的时候呢domain@kta,那么您将需要jsonpIt与堆栈溢出问题有点关联。如果我在下面发布的链接中回答得足够好,我建议关闭该问题