我正在寫一個非常簡單的宏,需要向服務器發出HTTP GET請求,並且響應不重要(它會啓動服務器上的進程)。 HTTP GET不需要認證。在OSX Excel中使用VBA獲取HTTP請求
我用下面的代碼來做到這一點「成功」(服務器日誌顯示的請求時,它向服務器,但在服務器運行HTTP 406):
Function callAPI(Url As String)
With ActiveSheet.QueryTables.Add(Connection:="URL;" & Url, Destination:=Range("D15"))
.PostText = ""
.RefreshStyle = xlOverwriteCells
.SaveData = True
.Refresh
End With
End Function
但我回來從服務器的以下消息:
Unable to open http://someurl.com Cannot locate the Internet server or proxy server.
我可以看到服務器返回的,因爲之後的GET請求不被髮送正確Content-Type
頭的一些研究正在發生的HTTP 406。
所以我的問題是 - 如何告訴ActiveSheet.QueryTables.Add
設置標題,或者我怎麼修改我的NGINX配置來支持這個特定的GET CALL
也許檢查此http://stackoverflow.com/questions/15981960/我怎麼做的問題 - 從http-get-from-excel-vba-for-mac-2011這基本上是說要將cURL外殼化,而不是使用QueryTables方法來執行HTTP GET。您將能夠以這種方式設置請求標頭。 –