在 PostMan 中模拟特定的 CURL

Simulate a specific CURL in PostMan

我正在使用 Postman 测试对 API 服务器的一些 Curl 请求。 API 开发人员给了我们 curl 命令,但我无法从 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@example.com","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) 在url输入框中输入https://api-server.com/API/index.php/member/signin,然后在下拉菜单中选择POST

2) 在 Headers 选项卡中,输入:

Content-Type: image/jpeg

Content-Transfer-Encoding: 二进制

3) 在 Body 选项卡中,select raw 单选按钮并写入:

{"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"}

select form-data 单选按钮并写入:

键=名称值=用户文件SelectText key = filename Select File 并上传你的 profil.jpg

更简单的方法是:

  1. 打开 POSTMAN
  2. 单击左上角的“导入”选项卡。
  3. Select 原始文本选项并粘贴您的 cURL 命令。
  4. 点击导入,您将在 Postman 构建器中拥有该命令!
  5. 单击发送到 post 命令

我尝试了 Onkaar Singh 提到的方法,

  1. 打开 POSTMAN
  2. 单击左上角的 "import" 选项卡。
  3. Select 原始文本选项并粘贴您的 cURL 命令。
  4. 点击导入,您将在您的 Postman 构建器中拥有该命令!

但问题是它对需要授权的 Apis 不起作用。

这是我的 curl 请求:

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

导入后 body 被正确导入,header 和 Url 也被导入。只有 api 键 9f4d7f5445e7 即

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

在curl请求中没有导入。

我解决的方法是,-u基本上是用来授权的。因此,在 Postman 中使用它时,您必须使用 API 键(在本例中为 9f4d7f5445e7)并进行 Base64 编码。一旦编码,它将 return 值 OWY0ZDdmNTQ0NWU3。然后添加一个新的header,键名是Authorization,键值是Basic OWY0ZDdmNTQ0NWU3。进行更改后,该请求对我有用。

网上有Base64编码器,我用的是http://www.url-encode-decode.com/base64-encode-decode/

希望对您有所帮助!!!

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

有时当您复制 cURL 时,它包含 --compressed。 导入时删除它->粘贴原始文本->单击导入。 如果您在导入任何 cURL 时在邮递员中遇到语法错误,它也会解决问题。

通常,当人们从 Charles 等任何代理工具复制 cURL 时,就会发生这种情况。

如上面多个答案中所述,您可以直接在 POSTMAN 中导入 cURL。但是如果 URL 被授权(或由于某种原因不工作) 我建议您可以在邮递员 body 中手动将所有数据点添加为 JSON。从 cURL.

中取出 API URL

对于授权部分 - 只需添加授权密钥和 base 64 编码字符串作为值。

示例:

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" }

Headers: Authorization:Basic cnpwX3Rlc3RfWEk5QW5TU0N3RlhjZ0Y6dURjVThLZ3JiQVVnZ3JNS***U056V25J 其中 "cnpwX3Rlc3RfWEk5QW5TU0N3RlhjZ0Y6dURjVThLZ3JiQVVnZ3JNS***U056V25J" 是 "rzp_test_26ccbdbfe0e84b:69b2e24411e384f91213f22a"`

的编码形式

小提示:对于编码,您可以轻松地转到 chrome 控制台(right-click => 检查)并键入: btoa("string you want to encode")(或使用postman基本授权)

按照上面的回答,效果很好。

如果我们在导入时粘贴带有授权数据的 curl 请求,Postman 将自动设置所有 headers。如果需要,我们只在请求 body 中传递行 JSON 数据,或者在 body.

中通过 form-data 上传图像

这只是一个例子。您的 API 应该是另一个(如果您的 API 允许)

curl -X POST 'https://verifyUser.abc.com/api/v1/verification' \
    -H 'secret: secret' \
    -H 'email: user@gmail.com' \
    -H 'accept: application/json, text/plain, */*' \
    -H 'authorizationtoken: bearer' \
    -F 'referenceFilePath= Add file path' \
    --compressed

当你使用Chromecopy as cURL (bash)并在Postman中导入时,你需要做以下事情:

  1. 删除 --compressed 选项
  2. --data-raw替换为-d

否则你会得到 invalid format for cURL 错误。

这是一个直观的答案

有关 1 分钟的快速教程,请观看此视频 Run curl in Postman
================================================ =====================

  1. 找到右上角的导入按钮

  2. Select Raw 并粘贴您的 curl 命令单击 Continue -> Import

  3. 您可以确认请求 URL、参数和 headers 已正确导入。