【问题标题】:Invoking a RESTFul WebService using WinHttp使用 WinHttp 调用 RESTFul WebService
【发布时间】:2015-04-30 11:11:40
【问题描述】:
我对 VB6 和 REST 架构完全陌生。不过,我想知道是否有任何用于 REST 客户端的 HelloWorld 示例,该示例使用 Windows HTTP 服务 API 调用 RESTFul webService。非常感谢。
【问题讨论】:
标签:
web-services
rest
http
vb6
winhttp
【解决方案1】:
解决方案如下:
Sub SendAsynchMessage()
Dim objHTTP As New WinHttp.WinHttpRequest
Dim doc As New MSXML2.DOMDocument
Dim root As MSXML2.IXMLDOMNode
Dim success As Boolean
Dim str As String
On Error GoTo ErrorHandler
success = doc.Load(App.Path & "\flow.xml")
Set root = doc.selectSingleNode("/root")
str = CStr(root.childNodes.Item(0).xml)
URL = "http://ipAddress:8081/messageAsynch"
objHTTP.Open "POST", url, False
objHTTP.SetRequestHeader "Content-Type", "text/xml; charset=utf-8"
objHTTP.Send (str)
Debug.Print objHTTP.Status
Debug.Print objHTTP.ResponseText
Exit Sub
ErrorHandler:
Dim E As ErrObject: Set E = Err
End Sub
“flow.xml”文件在这种情况下可能如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<!-- your xml flow to be send via http -->
</root>