398 Stimmen

Simuliere ein bestimmtes CURL-Kommando in Postman

Ich benutze Postman, um einige Curl-Anfragen an einen API-Server zu testen. Die API-Entwickler gaben uns den curl-Befehl, aber ich kann ihn nicht von Postman aus senden. Wie mache ich eine solche Anfrage von Postman aus?

curl -X POST "https://api-server.com/API/index.php/member/signin" -d "{"description":"","phone":"","lastname":"","app_version":"2.6.2","firstname":"","password":"my_pass","city":"","apikey":"213","lang":"fr","platform":"1","email":"email@example.com","pseudo":"example"}"

--0xKhTmLbOuNdArY
Content-Disposition: form-data; name="userfile"; filename="profil.jpg"
Content-Type: image/jpeg
Content-Transfer-Encoding: binary

—0xKhTmLbOuNdArY—

978voto

Onkaar Singh Punkte 10397

Ein einfacherer Ansatz wäre:

  1. Öffnen Sie POSTMAN
  2. Klicken Sie auf die Registerkarte "Import" auf der linken oberen Seite.
  3. Wählen Sie die Option "Raw Text" aus und fügen Sie Ihren cURL-Befehl ein.
  4. Klicken Sie auf Import und Sie haben den Befehl in Ihrem Postman-Builder!
  5. Klicken Sie auf Senden, um den Befehl zu posten

23voto

electricalbah Punkte 2097
Zusätzlich zur Antwort
1. Öffnen Sie POSTMAN
2. Klicken Sie auf die Registerkarte "Import" auf der linken oberen Seite.
3. Wählen Sie die Option "Raw-Text" aus und fügen Sie Ihren cURL-Befehl ein.
4. Klicken Sie auf Import und der Befehl wird in Ihrem Postman-Builder angezeigt!
5. Wenn -u admin:admin nicht importiert wird, gehen Sie einfach zum Autorisierungstab, wählen Sie Basic Auth -> geben Sie den Benutzernamen z.B. admin und das Passwort z.B. admin ein.
Dies generiert automatisch den Autorisierungsheader basierend auf dem Base64-Encoder

14voto

VeKe Punkte 8993
  1. Finden Sie die Import-Schaltfläche oben rechts Bildbeschreibung hier eingeben

  2. Wählen Sie Raw und fügen Sie Ihre Curl-Befehle ein, klicken Sie auf Fortfahren -> Importieren Bildbeschreibung hier eingeben

  3. Sie können bestätigen, dass die Anfrage-URLs, Parameter und Header ordnungsgemäß importiert wurden. Bildbeschreibung hier eingeben

10voto

Rito Punkte 2706

Ich habe den von Onkaar Singh erwähnten Ansatz ausprobiert,

  1. Öffnen Sie POSTMAN
  2. Klicken Sie auf die Registerkarte "Import" auf der linken oberen Seite.
  3. Wählen Sie die Option "Raw Text" aus und fügen Sie Ihren cURL-Befehl ein.
  4. Klicken Sie auf "Importieren" und Sie haben den Befehl in Ihrem Postman-Builder!

Aber das Problem ist, dass es nicht für die APIs funktioniert, die Autorisierung erfordern.

Das war meine cURL-Anfrage:

curl -v -H "Accept: application/json" -H "Content-type: application/json" -X POST -d ' 
{"customer_id":"812122", "event":"add_to_cart", "email": "abc@def.com", }' 
-u 9f4d7f5445e7: https://api.myapp.com/api/event

Nach dem Importieren wurde der Body korrekt importiert, die Header und die URL wurden ebenfalls importiert. Nur der API-Schlüssel 9f4d7f5445e7, der

-u 9f4d7f5445e7: https://api.myapp.com/api/v1/event 

in der cURL-Anfrage nicht importiert.

Der Weg, wie ich es gelöst habe, ist, dass -u im Grunde für Autorisierung verwendet wird. Also während der Verwendung in Postman müssen Sie den API-Schlüssel (in diesem Fall 9f4d7f5445e7) nehmen und Base64 codieren. Sobald codiert, wird es den Wert OWY0ZDdmNTQ0NWU3 zurückgeben. Fügen Sie dann einen neuen Header hinzu, der Schlüsselname wäre Authorization und der Schlüsselwert wäre Basic OWY0ZDdmNTQ0NWU3. Nachdem Sie diese Änderungen vorgenommen haben, hat die Anfrage bei mir funktioniert.

Es gibt Online-Base64-Encoder verfügbar, den ich verwendet habe ist http://www.url-encode-decode.com/base64-encode-decode/

Ich hoffe, es hilft!!!

10voto

Derek Liang Punkte 1013

Wenn Sie Chrome verwenden als cURL (bash) kopieren und in Postman importieren, müssen Sie die folgenden Dinge tun:

  1. Entfernen Sie die Option --compressed
  2. Ersetzen Sie --data-raw durch -d

Andernfalls erhalten Sie einen Fehler ungültiges Format für cURL.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X