Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1892to1896
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

API Post funktioniert nicht per VBA

API Post funktioniert nicht per VBA
25.07.2022 14:55:07
Florian
Moinsen,
ich habe mir eine Anbindung an eine API gebaut, die leider nicht funktioniert. Der GET klappt einwandfrei, aber beim POST gibt es Probleme. Die API wirft diesen Fehler zurück:

Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException: The GET method is not supported for this route.
Das ist mein Code. Anscheinend macht Excel kein POST sonder ein GET daraus.

Sub POST()
Dim objRequest As Object
Dim strUrl As String
Dim blnAsync As Boolean
Dim strResponse As String
Set objRequest = CreateObject("MSXML2.XMLHTTP")
strUrl = "https://api.meinedomain.de/api/v1/post-test/?name=testname"
blnAsync = True
With objRequest
.Open "POST", strUrl, blnAsync
.SetRequestHeader "Content-Type", "application/json"
.Send
'spin wheels whilst waiting for response
While objRequest.readyState  4
DoEvents
Wend
strResponse = .ResponseText
End With
Debug.Print strResponse
End Sub
Kann jemand helfen?
Danke Euch!

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: API Post funktioniert nicht per VBA
26.07.2022 13:22:50
Tobias
Hallo Florian,
Bei JSON hört es bei mir auf allerdings kannst du über deine Url mit ?name=testname kein JSON übergeben wie du als requestheader festlegst. Das müsste meiner Meinung nach als JSON-String als Parameter bei dem Sendbefehlt mitgegeben werden. Alternativ dann halt den RequestHeader entsprechend anpassen
Als ich mal mit API´s experimentiert habe hatte ich noch die Software Postman verwendet um die API-Calls zu testen. Eventuell liegt ja da auch irgendwo der Fehler. Frage lass ich mal offen weil ich nicht sicher bin ob das wirklich die Lösung bringt!
Schöne Grüße
Tobias
Anzeige
AW: API Post funktioniert nicht per VBA
26.07.2022 13:32:18
ChrisL
Hi Tobias
Zufall, dass ich gleich nach dir geantwortet habe. Wollte nicht bewusst reinfunken...
cu
Chris
AW: API Post funktioniert nicht per VBA
26.07.2022 13:30:28
ChrisL
Hi Florian
Bei GET stehen die Parameter (name=xy) direkt im URL. Bei POST sind die Argumente separat zu übergeben, nicht im URL.
Wenn ich mir die beiden Links ansehe, müssten die Parameter in der Zeile ".Send" übergeben werden.
https://codingislove.com/http-requests-excel-vba/ (Simple POST request to send formdata)
https://stackoverflow.com/questions/18111884/pass-parameters-in-vba-http-post-request
ungetestet:

Sub POST()
Dim objRequest As Object
Dim strUrl As String
Dim blnAsync As Boolean
Dim strResponse As String
Set objRequest = CreateObject("MSXML2.XMLHTTP")
strUrl = "https://api.meinedomain.de/api/v1/post-test/?"
blnAsync = True
With objRequest
.Open "POST", strUrl, blnAsync
.SetRequestHeader "Content-Type", "application/json"
.Send "name=testname"
'spin wheels whilst waiting for response
While objRequest.readyState  4
DoEvents
Wend
strResponse = .ResponseText
End With
Debug.Print strResponse
End Sub
cu
Chris
Anzeige
AW: API Post funktioniert nicht per VBA
26.07.2022 17:22:42
Florian
Fehler gefunden.
In der URL war der Schrägtisch hinter post-test zu viel. Dadurch wurde dann wohl irgendwie ein GET erkannt. Nun läuft alles. Danke euch!! :)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige