带有X-Auth-Token的VBA API POST
我有下面的curl代码,我正试图将其转换为VBA for excel带有X-Auth-Token的VBA API POST,vba,excel,curl,Vba,Excel,Curl,我有下面的curl代码,我正试图将其转换为VBA for excel Endpoint : http://api.datadoctorit.com/email-validate Request Type : POST curl_setopt( $ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen(
Endpoint : http://api.datadoctorit.com/email-validate
Request Type : POST
curl_setopt( $ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen( $data ),
'X-Auth-Token: XXXXXXX'
) );
下面是我想出的代码:
Dim strURL As String
Dim hReq As WinHttpRequest: Set hReq = CreateObject("WinHttp.WinHttpRequest.5.1")
Dim strResp As String
Dim Token As String
Token = mytoken
strURL = "http://api.datadoctorit.com/email-validate"
hReq.Open "POST", strURL, False
hReq.SetRequestHeader "Content-Type", "application/json"
hReq.Send "X-Auth-Token" & ":" & token
strResp = hReq.ResponseText
MsgBox strResp
我不断地发现这个错误:
"
{“错误”:“您需要先登录或注册,然后才能继续。”“}”
添加身份验证可以通过您的Base 64授权完成(由基本授权API调用的用户名和密码生成) 只需添加以下内容:
hReq.setRequestHeader "Authorization", "Basic " & authCode
例如
(一个真正的身份验证代码大约50个字符长)
X-Auth-Token
是一个头,因此可能看起来像hReq.SetRequestHeader“X-Auth-Token”,Token
后跟一个hReq.Send
尝试了以下变化,但结果相同:hReq.SetRequestHeader“X-Auth-Token”,Token看看
hReq.SetRequestHeader "Content-Type", "application/json"
hReq.setRequestHeader "Authorization", "Basic cHBzX2NyZWdJIYXAhjhjdjsfhjdshakjfdhakfhjk5c0AjMTZAY3JlZ"