2013-06-12 15 views
7

Mam interfejs API dla mojej aplikacji, który pozwala mi wysyłać do niego żądania CURL. Muszę zaimplementować to w VBA, aby moja baza danych na komputerze mogła uruchamiać żądania CURL do mojej aplikacji internetowej.Odpowiednik cURL w VBA?

curl -i --user [email protected]:password -X PUT -d "test=testing" https://mywebsite.com/api 

Jak mogę to zaimplementować w Access VBA? Czy mogę użyć WinHttp.WinHttpRequest.5.1? Dowolne przykłady? Dzięki Adam,

Odpowiedz

15

Rozwiązał to teraz, działa dobrze. Dla wygody innych ludzi.

TargetURL = "https://www.mysite.co.uk/app/api/v1/test" 
Set HTTPReq = CreateObject("WinHttp.WinHttpRequest.5.1") 
HTTPReq.Option(4) = 13056 ' 
HTTPReq.Open "PUT", TargetURL, False 
HTTPReq.SetCredentials "user", "password", 0 
HTTPReq.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
HTTPReq.send ("test[status]=" & Forms!curl!Text0.Value & "&test2[status]=" & Text2.Value) 
MsgBox (HTTPReq.responseText) 
+3

Jakie jest znaczenie opcji (4)? Dokumentacja [WinHttpRequest] (http://msdn.microsoft.com/en-us/library/windows/desktop/aa384106 (v = vs.85) .aspx) nie określa. – StockB

+2

Wiem, że to 3 lata temu, ale zastanawiałem się również, co to jest opcja (4) i znalazłem użyteczne informacje pod tym linkiem http://johankanngard.net/2005/11/11/winhttprequest-com-object -opcje-stałe / – rodedo