LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

VB使用XMLHTTP实现Post与Get

admin
2014年3月24日 12:47 本文热度 4659

visualbasic6.0的一个模块方法,使用XMLHTTP实现Post与Get功能,一个老代码了,替代Inet控件,实现数据通讯,5月的时候修改过,作者不是我本人。模块代码:

001 '==========================================================
002 '| 模 块 名 | XMLHTTP
003 '| 说 明 | 替代Inet控件,实现数据通讯
004 '| 创 建 人 | QQ:447201162 E-Mail:447201162@163.com
005 '| 修 改 | 2013-05-09
006 '==========================================================Public Enum DataEnum
007 ResponseText = 1
008 ResponseBody = 2
009 End Enum
010
011 Public Function GetData(ByVal Url As String, ByVal DataStic As DataEnum) As Variant
012
013 On Error GoTo ERR:
014 Dim XMLHTTP As Object
015 Dim DataS As String
016 Dim DataB() As Byte
017
018 Set XMLHTTP = CreateObject("Microsoft.XMLHTTP")
019
020 XMLHTTP.Open "get", Url, True
021 XMLHTTP.send
022
023 While XMLHTTP.ReadyState <> 4
024 DoEvents
025 Wend
026 '--------------------------------------函数返回
027 Select Case DataStic
028 Case ResponseText
029 '--------------------------------直接返回字符串
030 DataS = XMLHTTP.ResponseText
031 GetData = DataS
032 Case ResponseBody
033 '--------------------------------直接返回二进制
034 DataB = XMLHTTP.ResponseBody
035 GetData = DataB
036 Case ResponseBody + ResponseText
037 '------------------------------二进制转字符串[直接返回字串出现乱码时尝试]
038 DataS = BytesToStr(XMLHTTP.ResponseBody)
039 GetData = DataS
040 Case Else
041 '--------------------------------无效的返回
042 GetData = ""
043 End Select
044 '--------------------------------------释放空间
045 Set XMLHTTP = Nothing
046 Exit Function
047 ERR:
048 GetData = ""
049 End Function
050
051 Public Function PostData(ByVal StrUrl As String, ByVal StrData As String, ByVal DataStic As DataEnum) As Variant
052 On Error GoTo ERR:
053
054 Dim XMLHTTP As Object
055 Dim DataS As String
056 Dim DataB() As Byte
057
058 Set XMLHTTP = CreateObject("Microsoft.XMLHTTP")
059
060 XMLHTTP.Open "POST", StrUrl, True
061 XMLHTTP.setRequestHeader "Content-Length", Len(PostData)
062 XMLHTTP.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded"
063 XMLHTTP.send (StrData)
064
065 Do Until XMLHTTP.ReadyState = 4
066 DoEvents
067 Loop
068 '-----------------------------函数返回
069 Select Case DataStic
070 Case ResponseText
071 '--------------------------------直接返回字符串
072 DataS = XMLHTTP.ResponseText
073 PostData = DataS
074 Case ResponseBody
075 '--------------------------------直接返回二进制
076 DataB = XMLHTTP.ResponseBody
077 PostData = DataB
078 Case ResponseBody + ResponseText
079 '---------------------------二进制转字符串[直接返回字串出现乱码时尝试]
080 DataS = BytesToStr(XMLHTTP.ResponseBody)
081 PostData = DataS
082 Case Else
083 '--------------------------------无效的返回
084 PostData = ""
085 End Select
086 '------------------------------------释放空间
087 Set XMLHTTP = Nothing
088 Exit Function
089 ERR:
090 PostData = ""
091 End Function
092
093 Function BytesToStr(ByVal vIn) As String
094 strReturn = ""
095 For i = 1 To LenB(vIn)
096 ThisCharCode = AscB(MidB(vIn, i, 1))
097 If ThisCharCode < &H80 Then
098 strReturn = strReturn & Chr(ThisCharCode)
099 Else
100 NextCharCode = AscB(MidB(vIn, i + 1, 1))
101 strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
102 i = i + 1
103 End If
104 Next
105 BytesToStr = strReturn
106 End Function

该文章在 2014/3/24 12:47:17 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved