Simulasikan CURL tertentu di PostMan

153

Saya menggunakan tukang pos untuk menguji beberapa permintaan Curl ke server API. Pengembang API memberi kami perintah curl, tapi saya tidak bisa mengirimnya dari tukang pos. Bagaimana cara membuat permintaan seperti itu dari tukang pos?

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—
Marin Bînzari
sumber

Jawaban:

422

Pendekatan yang lebih sederhana adalah:

  1. Buka POSTMAN
  2. Klik pada tab "impor" di sisi kiri atas.
  3. Pilih opsi Teks Mentah dan tempel perintah CURL Anda.
  4. Tekan impor dan Anda akan memiliki perintah di pembuat tukang pos Anda!
  5. Klik Kirim untuk mengirim perintah

Semoga ini membantu!

Onkaar Singh
sumber
4
Saya tidak pernah tahu Anda bisa melakukan ini sampai saya melihat posting ini. Terima kasih!
austinthedeveloper
3
Inilah yang saya inginkan. Terima kasih!
Joshua Dance
3
Saya mencobanya dan berhasil sebagian. Ini permintaan ikal saya: 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 Setelah mengimpor tubuh diimpor dengan benar, tajuk dan URL juga diimpor. Hanya tombol api 9f4d7f5445e7 yang ada -u 9f4d7f5445e7: https://api.myapp.com/api/v1/eventdalam permintaan ikal tidak mengimpor atau mungkin Postman melewatkannya. Adakah cara mengatasinya?
Rito
1
Saya mencari tahu untuk mengimpor curl cmd oleh myselft. Tetapi kadang-kadang saya perlu mencari tahu di mana halaman dengan ikal impor saya, sepertinya tidak ada yang terjadi ketika mengimpor file / cmd. Anda kemudian perlu mengklik tombol "kode" di sisi kanan atas (di bawah tombol simpan). Kemudian Anda akan melihat apakah ikal Anda dimuat atau tidak.
zhihong
Pendekatan ini tidak menggunakan kredensial yang saya kode di dalamnya, jadi harus menambahkannya secara manual menggunakan Auth> Basic Auth, di dalam permintaan aktual menggunakan mouse & dropdown. Layak disebutkan, saya pikir, karena perilaku perangkat lunak itu sedemikian rupa sehingga tampaknya telah menerima & memanfaatkan kredit: yang Anda dapatkan hanyalah "berikan kredensial yang valid" daripada "harap berikan beberapa kredensial".
olisteadman
12
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
listrikbah
sumber
5

1) Masukkan ke https://api-server.com/API/index.php/member/signindalam kotak input url dan pilih POSTdari dropdown

2) Di tab Header, masukkan:

Tipe-Konten: gambar / jpeg

Content-Transfer-Encoding: biner

3) Pada tab Tubuh, pilih rawtombol radio dan tulis:

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

pilih form-datatombol radio dan tulis:

key = name Value = userfile Select Text key = namafile Pilih Filedan unggah profil.jpg Anda

hello_harry
sumber
5

Saya mencoba pendekatan yang disebutkan oleh Onkaar Singh,

  1. Buka POSTMAN
  2. Klik pada tab "impor" di sisi kiri atas.
  3. Pilih opsi Teks Mentah dan tempel perintah CURL Anda.
  4. Tekan impor dan Anda akan memiliki perintah di pembuat tukang pos Anda!

Tetapi masalahnya adalah itu tidak bekerja untuk Apis yang memerlukan otorisasi.

Ini permintaan ikal saya:

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

Setelah mengimpor tubuh diimpor dengan benar, header dan Url juga diimpor. Hanya tombol api 9f4d7f5445e7 yang

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

dalam permintaan ikal tidak mengimpor.

Cara saya menyelesaikannya adalah, -u pada dasarnya digunakan untuk Otorisasi. Jadi saat menggunakannya di tukang pos, Anda harus mengambil kunci API (yang 9f4d7f5445e7dalam hal ini) dan melakukan Encode Base64. Setelah disandikan akan mengembalikan nilainya OWY0ZDdmNTQ0NWU3. Kemudian tambahkan header baru, nama Authorizationkuncinya dan nilai kuncinya Basic OWY0ZDdmNTQ0NWU3. Setelah melakukan perubahan itu, permintaan itu berhasil untuk saya.

Ada Base64 Encoders online yang tersedia, yang saya gunakan adalah http://www.url-encode-decode.com/base64-encode-decode/

Semoga bisa membantu !!!

Rito
sumber
pada tab otorisasi tukang pos cukup pilih Auth Dasar dan akan menghasilkan header Base64
electricbah
2

terkadang setiap kali Anda menyalin CURL, itu berisi --compressed. Hapus sambil mengimpor-> Tempel Teks Mentah -> klik impor. Ini juga akan menyelesaikan masalah jika Anda mendapatkan kesalahan sintaks di tukang pos saat mengimpor CURL.

Secara umum, ketika orang menyalin CURL dari alat proxy apa pun seperti Charles, itu terjadi.

Ankit Gupta
sumber
0

Seperti disebutkan dalam beberapa jawaban di atas, Anda dapat mengimpor cURL di POSTMAN secara langsung. Tetapi jika URL diotorisasi (atau tidak berfungsi karena suatu alasan) sakit menyarankan Anda dapat secara manual menambahkan semua poin data sebagai JSON di tubuh tukang pos Anda. ambil URL API dari cURL.

untuk bagian Otorisasi - cukup tambahkan kunci Otorisasi dan basis 64 string yang disandikan sebagai nilai.

contoh:

curl -u rzp_test_26ccbdbfe0e84b:69b2e24411e384f91213f22a \ https://api.razorpay.com/v1/orders -X POST \ --data "amount=50000" \ --data "currency=INR" \ --data "receipt=Receipt #20" \ --data "payment_capture=1" https://api.razorpay.com/v1/orders

{ "amount": "5000", "currency": "INR", "receipt": "Receipt #20", "payment_capture": "1" }

Authorization:Basic cnpwX3Rlc3RfWEk5QW5TU0N3RlhjZ0Y6dURjVThLZ3JiQVVnZ3JNS***U056V25J Tajuk : di mana "cnpwX3Rlc3RfWEk5QW5TU0N3RlhjZ0Y6dURjVThLZ3JiQVVnZ3JNS *** U056V25J" adalah bentuk yang disandikan dari "rzp_test_26ccbdbfe0e84b12f22fb12fb12e_fbfbbbbbbbbbbbbbbbbbbbbbbbbbbjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjJJJJMJMJJJJJJJJJJJJJJJJJNJNDJDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDJDDDD

tip kecil: untuk penyandian, Anda dapat dengan mudah pergi ke konsol chrome Anda (klik kanan => periksa) dan ketik: btoa("string you want to encode")(atau gunakan otorisasi dasar tukang pos)

Shekhar
sumber