Vba 登录后的Http post请求
我的目标是:我想在用户登录后发送一个httprequest以获取Post Json(用户将使用Internet Explorer) 所以,在我的VBA代码中,我希望允许用户在浏览器中登录,然后他可以按下一个按钮来提取json(以表格形式) 我的问题是:如何在http请求中附加InternetExplorer cookies(已经具有凭据)。我试图发送一个httprequest,但收到“success”:false 如果我在InternetExplorer中手动输入URL,我可以成功下载de json文件,但我希望通过responseText获得此文件 我的代码:Vba 登录后的Http post请求,vba,http,Vba,Http,我的目标是:我想在用户登录后发送一个httprequest以获取Post Json(用户将使用Internet Explorer) 所以,在我的VBA代码中,我希望允许用户在浏览器中登录,然后他可以按下一个按钮来提取json(以表格形式) 我的问题是:如何在http请求中附加InternetExplorer cookies(已经具有凭据)。我试图发送一个httprequest,但收到“success”:false 如果我在InternetExplorer中手动输入URL,我可以成功下载de js
Sub GetJson(url as String)
Dim IE As InternetExplorer
Dim HTMLdoc As HTMLDocument
Dim aaa As String
Set objShell = CreateObject("Shell.Application")
'Get already open Internet Explorer
For x = 0 To (objShell.Windows.Count - 1)
On Error Resume Next
my_url = objShell.Windows(x).document.Location
my_title = objShell.Windows(x).document.Title
If my_title = "MY-PAGE" Then
Set IE = objShell.Windows(x)
Exit For
End If
Next
With IE
Set HTMLdoc = .document
End With
'Try to Get Json
Dim XMLHTTP As New MSXML2.ServerXMLHTTP60
XMLHTTP.Open "POST", url, False
XMLHTTP.send
xxx = XMLHTTP.responseText
MsgBox xxx
Set objShell = Nothing
Set IE = Nothing
Set HTMLdoc = Nothing
End Sub
有人知道如何解决这个问题吗?使用
MSXML2.XMLHTTP
而不是MSXML2.ServerXMLHTTP
@Omegalipes,我尝试过,但没有成功。结果是一样的:(