在VB6或ASP中调用webservice

web

VB6或ASP中调用webservice

Web Services技术使异种计算环境之间可以共享数据和通信,达到信息的一致性。我们可以利用

HTTP POST/GET协议、SOAP协议来调用Web Services。

一、 利用SOAP协议在VB6中调用Web Services

; 首先利用.net发布一个简单的Web Services

<WebMethod()> _

Public Function getString(ByVal str As String) As String

Return "Hello World, " & str & "!"

End Function

该Web Services只包含一个getString方法,用于返回一个字符串。当我们调用这个Web Services时,发送给.asmx页面的SOAP消息为:

<?xml version="1.0" encoding="utf-8"?>
<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/">
<soap:Body>
<getString xmlns="http://tempuri.org/TestWebService/Service1">
<str>string</str>
</getString>
</soap:Body>
</soap:Envelope>
而返回的SOAP消息为:

<?xml version="1.0" encoding="utf-8"?>
<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/">
<soap:Body>
<getStringResponse xmlns="http://tempuri.org/TestWebService/Service1">
<getStringResult>string</getStringResult>
</getStringResponse>
</soap:Body>
</soap:Envelope>

; 在VB6中调用这个简单的Web Services可以利用利用XMLHTTP协议向.asmx页面发

送SOAP来实现。

在VB6中,建立一个简单的工程,界面如图,我们通过点击Button来调用这个简

单的Web Services

Dim strxml As String

Dim str As String

str = Text2.Text

'定义soap消息

strxml = "<?xml version='1.0' encoding='utf-8'?><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/'><soap:Body><getString xmlns='http://tempuri.org/TestWebService/Service1'><str>" & str &

"</str></getString></soap:Body></soap:Envelope>"

'定义一个http对象,一边向服务器发送post消息

Dim h As MSXML2.ServerXMLHTTP40

'定义一个XML的文档对象,将手写的或者接受的XML内容转换成XML对象

Dim x As MSXML2.DOMDocument40

'初始化XML对象

Set x = New MSXML2.DOMDocument40

'将手写的SOAP字符串转换为XML对象

x.loadXML strxml

'初始化http对象

Set h = New MSXML2.ServerXMLHTTP40

'向指定的URL发送Post消息

h.open "POST", "http://localhost/TestWebService/Service1.asmx", False

h.setRequestHeader "Content-Type", "text/xml"

h.send (strxml)

While h.readyState <> 4

Wend

'显示返回的XML信息

Text1.Text = h.responseText

'将返回的XML信息解析并且显示返回值

Set x = New MSXML2.DOMDocument40

x.loadXML Text1.Text

Text1.Text = x.childNodes(1).Text

我们在TEXTBOX中输入“中国”,再点击BUTTON,于是就可以在下边的TEXTBOX中显示“Hello World, 中国” 。显示如图:

时间: 2024-11-02 16:23:22

在VB6或ASP中调用webservice的相关文章

在ASP中调用Excel画数据图表

excel|数据|图表 在ASP中调用Excel画数据图表,优势有很多,最突出的是可以输出多种形式的图形(总共有72种).以下是我写的一个通用ASP方法调用Excel画数据图表. <%'将数据图形化输出'dataArray二维数组'virtualFilePath输出图像文件名(虚拟路径)'nType显示类型Dim initTypeSub ExportPicture(dataArray,virtualFilePath,nType)Dim excelapp ' As New excel.Applic

在ASP中调用DCOM组件的应用技巧

在ASP中调用DCOM组件的应用技巧 1.编写DCOM组件: 假设我们想通过ASP页面来远程启动DNS服务,并且DNS服务器与Web服务器不为同一台机器.我们可以编写一个ActiveX DLL 来实现这个功能. 首先我们建立一个批处理文件StartDNS.bat,文件中写入:Net Start DNS.将文件保存在DNS服务器的一个目录下,例如C:\ManDNS\: 其次我们编写 Dll 程序如下(VB编写): Public Function StartDNS() As Boolean On E

在Android中调用WebService实例_Android

某些情况下我们可能需要与Mysql或者Oracle数据库进行数据交互,有些朋友的第一反应就是直接在Android中加载驱动然后进行数据的增删改查.我个人不推荐这种做法,一是手机毕竟不是电脑,操作大量数据费时费电:二是流量贵如金那.我个人比较推荐的做法是使用Java或PHP等开发接口或者编写WebService进行数据库的增删该查,然后Android调用接口或者WebService进行数据的交互.本文就给大家讲解在Android中如何调用远程服务器端提供的WebService. 既然是调用WebS

在asp中调用sql server的存储过程

在asp中调用sql server的存储过程可以加快程序运行速度,所以这些天在研究asp中利用sql server的存储过程,现总结如下,其中很多思想也是直接从chinaasp论坛中得出来,希望能给大家一些帮助.1.调用存储过程的一般方法先假设在sql server中有一存储过程dt_users:CREATE PROCEDURE [dbo].[dt_users] ASselect * from usersreturnGO第一种方法是不利用command对象,直接用recordset对象set r

在Android中调用WebService

某些情况下我们可能需要与Mysql或者Oracle数据库进行数据交互,有些朋友的第一反应就是直接在Android中加载驱动然后进行数据的增删改查.我个人不推荐这种做法,一是手机毕竟不是电脑,操作大量数据费时费电:二是流量贵如金那.我个人比较推荐的做法是使用Java或PHP等开发接口或者编写WebService进行数据库的增删该查,然后Android调用接口或者WebService进行数据的交互.本文就给大家讲解在Android中如何调用远程服务器端提供的WebService.既然是调用WebSe

实例学习如何在ASP中调用DLL

本文通过VB5.0创建ActiveX DLL文件,这个文件模拟了一个掷色子的过程,向大家介绍如何在ASP中调用DLL的文章专题. 动态联接库(DLL)是加快应用程序关键部分的执行速度的重要方法,但有一点恐怕大部分人都不知道,那就是在ASP文件也能通过调用DLL来加快服务器的执行速度,下面我简单的介绍一下在ASP文件调用DLL的步骤.  首先,必须得有DLL文件,本例是通过VB5.0创建ActiveX DLL文件,这个文件模拟了一个掷色子的过程.  在VB5.0的环境下,新建一个工程,并双击新建工

如何在ASP.Net Ajax中调用WebService

ajax|asp.net|web 今天我想实现利用javascript调用WebService我首先就想到了ASP.Net Ajax 因为微软的东西用着方便,我从网上看了看,这东西好多人都写了,我就从官方找了个Demo下了看看源代码,感觉没什么特殊的,于是动手开始写.先添加一个webservice.asmx然后在default.aspx中加入ScriptManager 并设置serviecs属性<asp:ScriptManager runat="server" ID="

在VC中调用WebService

一.什么是WebService ? WebService其实就是一个基于网络的应用程序,它向外部程序提供一定的调用接口.外部(远程)的程序,可以经由Web对其进行调用. 二.WebService 的特性: 1.由于 WebService 经由web服务器发布,所以比DCOM而言,可以顺利穿过防火墙.这也是 WebService 的优点之一,可以说, WebService ,为分布 式应用的开发,提供了一个很好的平台. 2.对 WebService 的调用,是通过SOAP协议进行的.简单对象访问协

asp.net调用webservice时出现“Microsoft JScript 运行时错误: 对象不支持此属性或方法”

问题描述 环境:VS2008+asp.netfunctionsetShowTitle(obj){varvTitle=window.document.all["lbl_title"];vTitle.innerText=obj.innerHTML;service.useService("../THJ_WebService.asmx?WSDL","THJ_WebService");service.THJ_WebService.callService(p