0
我试图从这个其他服务获取数据。我的浏览器它工作正常。现在,我尝试这样做在VBA在Excel从VBA调用https REST服务
我相信这与HTTPS和TSL做显示的数据。当我在C#中编写这个代码并添加这行代码时,它就可以工作。我只是不知道如何在最后一行
我试图从这个其他服务获取数据。我的浏览器它工作正常。现在,我尝试这样做在VBA在Excel从VBA调用https REST服务
我相信这与HTTPS和TSL做显示的数据。当我在C#中编写这个代码并添加这行代码时,它就可以工作。我只是不知道如何在最后一行
试试这个做在VBA
'ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 - object required
Dim reader As New WinHttpRequest
Dim json As New JSONParser
Dim ws As Worksheet: Set ws = ActiveSheet
Dim url As String
url = ws.[EDS_URL]
' reader.Option(9) = 2720 - invalid procedure call
reader.Open "GET", url, False
reader.Send ' automation error
没有TSL部分我得到的自动化错误,接受作为解决办法,如果它有助于
Sub GetData()
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
url = "https://www.energidataservice.dk/api/action/datastore_search?resource_id=ec797392-7ba5-4c3a-b021-8ae302ac295a&limit=5"
objHTTP.Open "GET", url, False
objHTTP.setRequestHeader "Content-Type", "text/json"
objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
objHTTP.setRequestHeader "User-Agent", "Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405"
objHTTP.send ("")
Debug.Print objHTTP.Status
If objHTTP.Status = "200" Then
MsgBox (objHTTP.responseText)
End If
End Sub
嗨 它似乎已经解决了我的Windows 10机器上的问题,但不是在我的Windows 7,我不知道这是不是差别。 –