VBA получить запрос cURL - PullRequest
0 голосов
/ 30 ноября 2018

У меня проблема с объектом MSXML2.XMLHTTP в VBA.Мне нужно отправить сообщение в формате json, но токен аутентификации содержит двойные кавычки.Таким образом, чтобы эти двойные кавычки появились в сообщении, используется обратный слеш.Теперь, анализируя xml для Json, объект xmlhttp добавляет дополнительную обратную косую черту.

В основном я отправляю этот токен Token = \ x22AAA \ x22

И сервер получает этот токен Token = \\ x22AAA \\ x22 "

Sub cmdOAuth2_Click()

  Dim webServiceURL As String
  Dim actionType As String
  Dim targetWord As String
  Dim actionType2 As String
  Dim targetWord2 As String

  webServiceURL = "https://api.esios.ree.es/archives"

  actionType = "Accept"
  targetWord = "application/json"
  actionType2 = "Content-Type"
  targetWord2 = "application/json"
  actionType3 = "Host"
  targetWord3 = "api.esios.ree.es"
  actionType4 = "Authorization"
  targetWord4 = "Token token=\x22AAA\x22"
  actionType5 = "Cookie"
  targetWord5 = " "

  With CreateObject("MSXML2.XMLHTTP")
    .Open "GET", webServiceURL, False
    .setRequestHeader actionType, targetWord
    .setRequestHeader actionType2, targetWord2
    .setRequestHeader actionType3, targetWord3
    .setRequestHeader actionType4, targetWord4
    .setRequestHeader actionType5, targetWord5
    .send 
    If .Status = 200 Then
      Debug.Print .responseText
      MsgBox .getAllResponseHeaders
    Else
      Debug.Print .Status & ": " & .statusText
    End If
  End With

End Sub
...