2015-01-15 6 views
27

I utilizzando Postman per testare alcune richieste di Curl su un server API. Lo sviluppatore dell'API ci ha dato il comando di arricciatura, ma non posso inviarlo con Postman. Come fare una tale richiesta?Simulare un CURL specifico in PostMan

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 protected]","pseudo":"example"}" 

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

<ffd8ffe0 00104a46 49460001 01010048 ... a00fffd9> 

—0xKhTmLbOuNdArY— 

risposta

78

Un approccio più semplice potrebbe essere:

  1. Aperto POSTMAN
  2. Fare clic sulla scheda "importa" nella parte in alto a sinistra.
  3. Selezionare l'opzione Testo non elaborato e incollare il comando cURL.
  4. Hit Import e avrai il comando nel tuo postino costruttore!

Spero che questo aiuti!

+0

Non ho mai saputo che avresti potuto farlo fino a quando non ho visto questo post. Grazie! – austinthedeveloper

+0

Questo è esattamente quello che volevo. Grazie! –

+1

L'ho provato e ha funzionato parzialmente. Questa è la mia richiesta di arricciatura: 'curl -v -H" Accetta: application/json "-H" Content-type: application/json "-X POST -d ' {" customer_id ":" 812122 ", " evento ":" add_to_cart ", " email ":" [email protected] ", } '-u 9f4d7f5445e7: https: // api.myapp.com/api/event' Dopo l'importazione il corpo è stato importato correttamente, anche le intestazioni e l'URL sono stati importati. Solo la chiave api 9f4d7f5445e7 che è '-u 9f4d7f5445e7: https: // api.myapp.com/api/v1/event' nella richiesta di ricciolo non è stata importata o potrebbe essere Postino saltata. Qualche idea su come risolverlo? – Rito

4

1) Mettere https://api-server.com/API/index.php/member/signin nella casella di immissione URL e scegli POST dal menu a tendina

2) Nella scheda Basette, immettere:

Content-Type: image/jpeg

Content -Transfer-Encoding: binario

3) Nella scheda Corpo, selezionare il pulsante di opzione raw e scrivere:

{"description":"","phone":"","lastname":"","app_version":"2.6.2","firstname":"","password":"my_pass","city":"","apikey":"213","lang":"fr","platform":"1","email":"[email protected]","pseudo":"example"}

selezionare form-data pulsante di opzione e scrivere:

key = Nome valore = userfile Selezionare Text key = filename Selezionare File e caricare il tuo profil.jpg

2

ho provato l'approccio di cui parla Onkaar Singh,

  1. Aprire POSTINO
  2. Fare clic sulla scheda "importazione" sul lato in alto a sinistra.
  3. Selezionare l'opzione Testo non elaborato e incollare il comando cURL.
  4. Hit Import e avrai il comando nel tuo postino costruttore!

Ma il problema è che non ha funzionato per l'Apis che richiede l'autorizzazione.

Questa era la mia richiesta ricciolo:

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

Dopo aver importato il corpo ma ho importato correttamente, le intestazioni e l'URL anche ottenuto importati. Solo l'API 9f4d7f5445e7 chiave che è

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

nella richiesta ricciolo non importare.

Il modo in cui l'ho risolto è -u fondamentalmente utilizzato per l'autorizzazione. Quindi mentre lo usi in Postman, devi prendere la chiave API (che è 9f4d7f5445e7 in questo caso) e fare Base64 Encode.Una volta codificato restituirà il valore OWY0ZDdmNTQ0NWU3. Quindi aggiungere una nuova intestazione, il nome della chiave sarà Authorization e il valore della chiave sarà Basic OWY0ZDdmNTQ0NWU3. Dopo aver apportato tali modifiche, la richiesta ha funzionato per me.

ci sono Encoder Base64 online disponibili, quella che ho usato è http://www.url-encode-decode.com/base64-encode-decode/

Speranza che aiuta !!!

+0

nella scheda di autorizzazione del postino è sufficiente selezionare Autentica di base e genererà l'intestazione Base64 – electricalbah

4
In addition to the answer 
1. Open POSTMAN 
2. Click on "import" tab on the upper left side. 
3. Select the Raw Text option and paste your cURL command. 
4. Hit import and you will have the command in your Postman builder! 
5. If -u admin:admin are not imported, just go to the Authorization 
    tab, select Basic Auth -> enter the user name eg admin and password eg admin. 
This will automatically generate Authorization header based on Base64 encoder