ajax调用api接口 Java webservice接口调用



文章插图
ajax调用api接口 Java webservice接口调用

文章插图
Web service是一个平台独立的 , 低耦合的 , 自包含的、基于可编程的web的应用程序 , 可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序 , 用于开发分布式的互操作的应用程序 。
WebService服务接口会生成一个标准的wsdl文件 , 或者访问一个URL地址可以查看WSDL信息 。
WSDL:(Web服务描述语言 , Web Services Description Language)是为描述Web服务发布的XML格式 。
一般情况下 , 都是在客户端进行调用服务端暴露出来的接口 , 那么如何在浏览器中通过ajax的方式调用呢?
var data = http://www.mnbkw.com/jxjc/178776/‘
+ ‘<soap:Header/>’
+ ‘<soap:Body>’
+ ‘<ns1:hello xmlns:ns1=”http://impl.server.ws.computech.com/”></ns1:hello>’
+ ‘</soap:Body>’
+ ‘</soap:Envelope>’;
$.ajax({
“type”: “POST”,
“async”: false,
“Content-Type”: “text/xml;charset=utf-8”,
“url”: “http://192.168.1.60:8080/yourApp/service/cmp”,
“dataType”: “xml”,
“data”: data,
“success”: function(response){
console.log(“success”);
},
“error”: function(e){
console.log(“error”);
}
});
SOAP:简单对象访问协议是交换数据的一种协议规范 , 是一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议 , 它被设计成在WEB上交换结构化的和固化的信息 。
其实基于soap协议的webservice服务 , 它传输的消息是被soap进行了一层包装 , 我们在进行post请求的时候 , 只要把完整的进行过soap包装的消息发送出去就可以了 。
如果此时 , 你就立即进行调用测试 , 浏览器调试控制台会报错:
No ‘Access-Control-Allow-Origin’ header is present on the requested resource.
因为webservice是一种跨平台服务 , 因此在浏览器中使用就涉及到跨域的问题 。为了解决此问题 , 你需要在暴露webservice服务的服务端进行一些设置 。在服务器返回给你的响应消息头中 , 需要增加一下设置:Access-Control-Allow-Origin:* , 此设置表示允许所有外部请求调用 , 你也可以将*设置为具体的访问地址 。
【ajax调用api接口 Java webservice接口调用】好了 , 搞定了 , 尽情的使用吧 。