在做一个快递的单号追踪的EXcel ,POST方式数据交换是Json ,如何提交刷机久遍历结果。
解决方案 »
- 请高手帮忙看看如下代码该如何理解.
- vb中如何向一个后台窗口发送回车键
- 关于VScroll的LargeChange和Max的值如何配合
- RichTextBox控件,图片插入问题
- 全局的ADODB.Connection对象,我要处理它的随机错误,应该怎么做?
- 不能加载控件的问题
- access开发合同管理系统详细教程
- 如何设置打印机不是页打印????
- 求 <<Windows脚本编程核心技术精解>>的配套光盘的原程序 ?
- 在VB中T-SQL 调试器出错!请大家帮忙
- vb调用DLL时,有VB6.EXE (Cipher.dll) 处有未经处理的异常:读取位置 0x00000000 时发生访问冲突
- 请问各位大牛,VB如何实时读取和显示从USB口传来的信号?
百度搜“VBA HTTP POST”
PostData:
参数:
StrUrl --------------------接受提交的URL
StrData -----------------需要提交的数据,如JSON字串,或者登录字串 "user=xxx&psw=xxx"
varAsyncX --------------设置工作模式为同步或异步,true(异步)或false(同步),通常使用异步方式。
CodePageX ------------对返回数据的解码编码,字符串:GB2312或UTF-8'==================================================
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 FunctionPublic 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