Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   curl mit Rest Client (https://www.delphipraxis.net/200814-curl-mit-rest-client.html)

dataspider 28. Mai 2019 14:37

curl mit Rest Client
 
Hallo

Ich beschäftige mir das erste Mal mit REST API.
Ich habe z.B. folgende Hinweise

Token generieren:
curl -X POST -H "Content-Type: application/json" https://www.firma.de/firma-api/login -d '{"username":"johndoe","password":"test“}'

Jetzt versuche ich, das mit Delphi zu lösen.
Habe also auf dem Formular

RestClient - BaseURL = https://www.firma.de/firma-api/

RestRequest - Resource = login, Method = rmPost, username + password als Parameter

RestResponse - ContentType = application/json

Wenn ich Request mit Rechtsklick ausführe, kommt erst mal: HTTP/1.1 500 Internal Server error

Ich mach das sicher falsch.
Wie setze ich den curl - Aufruf richtig um?

Danke

Frank

hoika 28. Mai 2019 14:40

AW: curl mit Rest Client
 
Hallo,
mit der Komponente kenne ich mich nicht aus, aber sicher dass in RestResponse Nutzername und Passwort stehen?

dataspider 28. Mai 2019 14:57

AW: curl mit Rest Client
 
Zitat:

Zitat von hoika (Beitrag 1433276)
Hallo,
mit der Komponente kenne ich mich nicht aus, aber sicher dass in RestResponse Nutzername und Passwort stehen?

Danke

Stehen natürlich im RestRequest...

Neutral General 28. Mai 2019 16:18

AW: curl mit Rest Client
 
Du musst Benutzername und Passwort nicht per Header (Parameter) mitgeben sondern wie bei Curl auch als JSON im Body.

Delphi-Quellcode:
RestRequest.AddBody('{"username":"johndoe","password":"test"}', TRESTContentType.ctAPPLICATION_JSON);

dataspider 28. Mai 2019 20:16

AW: curl mit Rest Client
 
Michael

Es hat auf Anhieb funktioniert!
Vielen vielen Dank!

Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz