2,462
社区成员
发帖
与我相关
我的任务
分享
'==================================================
Public Function PostData(ByVal StrUrl As String, ByVal StrData As String, varAsyncX As Boolean, CodePageX As String) As Variant
' On Error GoTo ERR:'ByVal DataStic As DataEnum,
Dim XMLHTTP As Object, GetBody
Dim DataS As String
Dim DataB() As Byte
Set XMLHTTP = CreateObject("Microsoft.XMLHTTP")
XMLHTTP.Open "POST", StrUrl, varAsyncX 'True
' XMLHTTP.setRequestHeader "Content-Length", Len(PostData)
XMLHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
XMLHTTP.send (StrData)
If varAsyncX Then
Do Until XMLHTTP.ReadyState = 4
DoEvents
Loop
End If
GetBody = XMLHTTP.ResponseBody
If Len(GetBody) > 1 Then
GetBody = BytesToStr(GetBody, CodePageX)
PostData = GetBody
End If
'------------------------------------释放空间
exitX:
Set XMLHTTP = Nothing
Exit Function
ERR:
PostData = ""
Resume exitX 'Next
End Function
Public Function BytesToStr(strBody, CodeBase)
Dim objStream
Set objStream = CreateObject("Adodb.Stream")
With objStream
.Type = 1
.Mode = 3
.Open
.Write strBody
.Position = 0
.Type = 2
.Charset = CodeBase '"GB2312" '
BytesToStr = .ReadText
.Close
End With
Set objStream = Nothing
End Function