使用javascript调用webservice
2014-08-08 10:23
417 查看
在项目过程中遇到了在html中调用webservice的情况,由于Ajax不能跨域,而且后台那边也没有给测试环境,就自己先搭了个简易的webservice,想模拟下从html中调看能调出来么?
结果很蛋疼,wsdl能拿到,但是直接访问方法就报500,不管方法是有参还是无参都会报错,仔细检查后看到tomcat上提示no SOAPAction header,没有SOAP头。。。后来看到了pignut_wang写的http://www.iteye.com/topic/98182这篇文章,太精髓了,赶紧拿来试试,果然行了。在此感谢pignut_wang的分享。
写在前面:
由于我的webservice返回的XML与pignut_wang文中提到的webservice返回的XML在内容上不太一样,测试中有点小问题,所以我对pignut_wang提供的webservice.js文件做了点小修改
代码在IE6和FF测试通过,对于c#和java(xfire)写的webservice,都测试通过
此代码原型来源于 http://www.guru4.net/ 的javascript soapclient
发现这个下载的js只能用于调用c#的webservice,所以利用mootools,重新封装,达到IE和火狐的兼容的同时,兼容java和c#
(在例子中使用的 mootools.v1.11.js 文件,做过修改)
首先,下载pignut_wang提供的JavaScriptSOAP(V2).rar
解压后将WebService.js和mootools.v1.11.js放在webservice项目下。
然后在需要调webservice服务的页面中引用这两个JS文件,并在页面中加入请求代码:
最后,只要在需要调服务的时候调用ajaxRequest函数就可以了,不过这个函数里面的参数是要自己事先填好的哦。
结果很蛋疼,wsdl能拿到,但是直接访问方法就报500,不管方法是有参还是无参都会报错,仔细检查后看到tomcat上提示no SOAPAction header,没有SOAP头。。。后来看到了pignut_wang写的http://www.iteye.com/topic/98182这篇文章,太精髓了,赶紧拿来试试,果然行了。在此感谢pignut_wang的分享。
写在前面:
由于我的webservice返回的XML与pignut_wang文中提到的webservice返回的XML在内容上不太一样,测试中有点小问题,所以我对pignut_wang提供的webservice.js文件做了点小修改
代码在IE6和FF测试通过,对于c#和java(xfire)写的webservice,都测试通过
此代码原型来源于 http://www.guru4.net/ 的javascript soapclient
发现这个下载的js只能用于调用c#的webservice,所以利用mootools,重新封装,达到IE和火狐的兼容的同时,兼容java和c#
(在例子中使用的 mootools.v1.11.js 文件,做过修改)
首先,下载pignut_wang提供的JavaScriptSOAP(V2).rar
解压后将WebService.js和mootools.v1.11.js放在webservice项目下。
然后在需要调webservice服务的页面中引用这两个JS文件,并在页面中加入请求代码:
相关文章推荐
- 如何使用javascript调用webservice
- 使用javascript调用webservice示例
- 使用javascript调用webservice示例
- 转--JavaScript调用WebServices(使用WebService.htc)--
- javascript中使用MSXML调用我自己电脑上的WEBservice
- JavaScript调用WebServices(使用WebService.htc)
- webservice 如何允许远程访问?如果使用javascript 调用 webservice
- 使用javascript调用webservice示例
- 使用javascript调用webservice示例
- 使用JavaScript调用WebService四篇文章及代码
- 使用javascript调用webservice示例
- 使用JavaScript调用WebService的示例
- 使用C#创建webservice及三种调用方式
- .net 下用javascript调用webservice
- [转]:Javascript+xmlhttp调用Webservice
- 使用C#创建webservice及三种调用方式
- 如何从客户端 JavaScript 调用 .NET Web 服务使用 InternetExplorer 和 MSXML
- 使用Javascript调用回调函数__doPostBack()
- 使用C#创建webservice及三种调用方式
- 初学AJAX遇到的的问题:使用javascript代码调用服务端代码时提示'WebForm1'未定义