Имитировать конкретный CURL в PostMan

Я использую Postman для проверки некоторых запросов Curl к серверу API. Разработчики API дали нам команду curl, но я не могу отправить ее от Почтальона. Как сделать такой запрос от почтальона?

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—

Ответ 1

Более простой подход:

  • Открыть POSTMAN
  • Нажмите вкладку "Импорт" в верхней левой части.
  • Выберите параметр "Необработанный текст" и вставьте команду cURL.
  • Хит импорт, и у вас будет команда в вашем почтовостроителе!

Надеюсь, это поможет!

Ответ 2

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

Ответ 3

1) Поместите https://api-server.com/API/index.php/member/signin в поле ввода URL и выберите POST из выпадающего меню

2) На вкладке "Заголовки" введите:

Content-Type: image/jpeg

Content-Transfer-Encoding: двоичный

3) На вкладке "Тело" выберите переключатель raw и напишите:

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

выберите form-data радиокнопку и напишите:

key = name Значение = пользовательский файл Выберите Text key = filename Выберите File и загрузите свой profil.jpg

Ответ 4

Я пробовал подход, упомянутый Onkaar Singh,

  • Открыть POSTMAN
  • Перейдите на вкладку "Импорт" в верхней левой части.
  • Выберите опцию "Сырой текст" и вставьте команду cURL.
  • Хит импорт, и у вас будет команда в вашем почтовостроителе!

Но проблема в том, что он не работает для Apis, требующего авторизации.

Это был мой запрос на завивание:

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

После импорта правильного импорта тела заголовки и URL также были импортированы. Только ключ api 9f4d7f5445e7, который

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

в запросе на завивки не импортировался.

То, как я решил это, -u в основном используется для авторизации. Поэтому, используя его в Postman, вы должны взять ключ API (который в этом случае 9f4d7f5445e7) и сделать Base64 Encode. После кодирования он вернет значение OWY0ZDdmNTQ0NWU3. Затем добавьте новый заголовок, имя ключа будет Authorization, а значение ключа будет Basic OWY0ZDdmNTQ0NWU3. После внесения этих изменений запрос работал на меня.

Доступны онлайн-кодеры Base64, которые я использовал http://www.url-encode-decode.com/base64-encode-decode/

Надеюсь, это поможет!!!

Ответ 5

иногда, когда вы копируете cURL, он содержит --compressed. Удалите его, пока import-> Paste Raw Text--> нажимает на импорт. Это также решит проблему, если вы получите синтаксическую ошибку в почтальоне при импорте любого cURL.

Обычно, когда люди копируют cURL из любых прокси-инструментов, таких как Charles, это происходит.