Сократное извлечение данных через MS Access vba с возвратом статуса 500

Я пытаюсь получить некоторые данные vio oData с сайта Socrata, используя vba в MS Access. Тем не менее, я получаю статус 500 вернулся.

URL-адрес, который я посылаю функции, был скопирован из раздела oData сайта Socrata.

' Given a URL, reads an OData feed or entry into an XML document.
Function ODataReadUrl(ByVal strUrl As String) As MSXML2.DOMDocument60
    Dim objXmlHttp As MSXML2.XMLHTTP60
    Dim objResult As MSXML2.DOMDocument60
    Dim strText As String

    Dim strUser As String
    strUser = EncodeBase64("REDACTED")
    Dim strPw As String
    strPw = EncodeBase64("REDACTED*")
    Dim strToken As String
    strToken = EncodeBase64(REDACTED)

    ' Make a request for the URL.
    Set objXmlHttp = New MSXML2.XMLHTTP
    objXmlHttp.Open "GET", strUrl, False 
    objXmlHttp.setRequestHeader "Authorization", "Basic " + strUser + ":" + strPw
    objXmlHttp.setRequestHeader "X-App-Token:", strToken
    objXmlHttp.setRequestHeader "X-Socrata-RequestId", "B93C4239-7F30-47CD-BC73-8F79F81096A2"
    objXmlHttp.send

    If objXmlHttp.Status <> 200 Then
        Err.Raise ODataCannotReadUrlError, "ODataReadUrl", "Unable to get '" & strUrl & "' - status code: " & objXmlHttp.Status
    End If

    ' Get the result as text.
    strText = objXmlHttp.responseText
    Set objXmlHttp = Nothing

    ' Create a document from the text.
    Set objResult = New MSXML2.DOMDocument60
    objResult.LoadXML strText
    If objResult.parseError.ErrorCode <> 0 Then
        Err.Raise ODataParseError, "ODataReadUrl", "Unable to load '" & strUrl & "' - " & objResult.parseError.reason
    End If

    Set ODataReadUrl = objResult
End Function

0 ответов

Другие вопросы по тегам