在VB6或ASP中调用webservice
来源:互联网 发布:论文翻译软件 编辑:程序博客网 时间:2024/05/20 20:57
在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, 中国” 。显示如图:
- 在VB6或ASP中调用webservice
- 在VB6或ASP中调用webservice
- 在VB6或ASP中调用webservice
- 在VB6或ASP中调用webservice
- VB6调用WebService、WCF
- 在ASP.NETAtlas中调用WebService——创建Mashup调用远端WebService(GoogleSearch实例)
- 在ASP.NETAtlas中调用WebService—创建Mashup调用远端WebService(Yahoo!天气实例)
- VB6.0调用WEBService问题
- VB6.0调用WEBService问题
- ASP.NET中调用WebService
- webservice:在项目中调用webservice项目
- 在JavaScript中调用WebService
- 在JavaScript中调用WebService
- 在SQLserver2005中调用webservice
- 在VC中调用 WebService
- 在VC中调用 WebService
- 在VC中调用 WebService
- 在Android中调用WebService
- 使用Publish/Subscribe 设计模式达到对象间数据同步
- 使用Publish/Subscribe 设计模式达到对象间数据同步(二)
- Prototype设计模式的实现
- 制作带有超级连接的统计图
- 设计模式之代理模式(Proxy)
- 在VB6或ASP中调用webservice
- 基于Session的单件(Singleton)对象
- Null Object 设计模式
- 实现Prototype设计模式
- VB.NET特性
- VB.NET特性之FieldOffset特性
- 整合Tomcat5和IIS5 直到能够正常打开jsp(绝对详细的操作,如果还配置不好,请扔砖头)
- 《Delphi面向对象编程思想》前言
- Delphi模式编程之策略模式(上)