Web 开发 介绍几种调用WebService的方法

来源:IT专家网

  在JavaScript中调用WebService

  <script language="javascript">
  function PostRequestData(URL,data){
  var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  xmlhttp.Open("POST",URL, false);
  xmlhttp.SetRequestHeader ("Content-Type","text/xml; charset=utf-8");
  xmlhttp.SetRequestHeader ("SOAPAction","http://tempuri.org/myService/test/isNumner");
  try {
  xmlhttp.Send(data);
  var result = xmlhttp.status;
  }
  catch(ex) {
  return("0" + ex.description + "|" + ex.number);
  }
  if(result==200) {
  return("1" + xmlhttp.responseText);
  }
  xmlhttp = null;
  }
  function loadit(value){
  var url = 'http://localhost/myService/test.asmx';
  var data ;
  var r;
  data = '<?xml version="1.0" encoding="utf-8"?>';
  data = data + '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">';
  data = data + '<soap:Body>';
  data = data + '<isNumner xmlns="http://tempuri.org/myService/test">';
  data = data + '<str>'+value+'</str>';
  data = data + '</isNumner>';
  data = data + '</soap:Body>';
  data = data + '</soap:Envelope>';
  r=PostRequestData(url,data);
  document.write(r);
  }
  loadit('5');
  </script>

  2. 在Asp中

  < %@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
  <%
  Dim strxml
  Dim str
  '定义soap消息
  strxml = "<?xml version='1.0' encoding='tf-8'?>"
  strxml = strxml & "<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>"
  strxml = strxml & "<soap:Body> "
  strxml = strxml & "<isNumner xmlns='http://tempuri.org/myService/test'>"
  strxml = strxml & "<str>4< /str>"
  strxml = strxml & "</isNumner>"
  strxml = strxml & "</soap:Body>"
  strxml = strxml & "</soap:Envelope>"
  '定义一个XML的文档对象,将手写的或者接受的XML内容转换成XML对象
  'set x = createobject("Microsoft.DOMDocument")
  '初始化XML对象
  '将手写的SOAP字符串转换为XML对象
  ' x.loadXML strxml
  '初始化http对象
  Set h = createobject( "Microsoft.XMLHTTP")
  '向指定的URL发送Post消息
  h.open "POST", "http://localhost/myService/test.asmx", False
  h.setRequestHeader "Content-Type", "text/xml"
  h.setRequestHeader "SOAPAction", "http://tempuri.org/myService/test/isNumner"
  h.send (strxml)
  While h.readyState < > 4
  Wend
  '显示返回的XML信息
  str = h.responseText
  '将返回的XML信息解析并且显示返回值
  'Set x = createobject("MSXML2.DOMDocument")
  ' x.loadXML str
  'str = x.childNodes(1).Text
  response.write(str)
  %>

  3.在.net中

  在.net中调用WebService就方便多了,没有必要自己写soap消息了,以上都是用XMLHTTP来发送WebService请求的,在.net只要添加了web引用,会自动为你创建一个代理类。然后使用代理类就像用自己定义的类一样方便。

 

 
[收藏] [返回顶部] [打印本页] [关闭窗口]  
 
 
 
 相关主题:  
 
ASP.NET Web服务实现软件共享
Web 开发 介绍几种调用WebService的方法
在 VB 中调用 C# 写的 WebService
 
 网友评论:
正在加载……
 
*评论者:
主页:
标题:
*内容:
【声明】 地球黑匣子网刊载的资讯及其他内容均由网友提供分享 并且纯属作者个人观点,不表示地球黑匣子网同意其说法或描述,仅为提供更多信息,也不构成任何建议。网友转载请注明原作者姓名及出处。如有侵犯到您的版权,请与我们联系,我们会马上进行重新整理!
最新日志列表
人气主题
 
 
 
 
声明:本网站部分内容属网民发布和来自于互联网。对于引用、发布、转载和放置的内容(广告、链接、文字、图像或声音),所产生的所有法律责任,都将由信息归属者或者广告厂商提供者承担,并且由此产生的版权、署名权的异议、纠纷,本网站概不承担任何责任,本站转载素材仅供大家欣赏和分享,切勿做为商业目的使用。
 
Copyright © 地球黑匣子网 2007.06 - 2010   Email:dqhxzcom@163.com
鲁ICP备07501416号   QQ:254212580 网站管理