将命令 cURL 转换为 HTTP 请求

Posted

技术标签:

【中文标题】将命令 cURL 转换为 HTTP 请求【英文标题】:Converting command cURL to HTTP request 【发布时间】:2016-08-04 22:05:47 【问题描述】:
curl -X POST https://example.com/sandbox -u \
    'username:password' -d 'vendor=123456' -d 'list_id=1000001' \
    -H 'Accept: application/json

如何使用这样的命令 cURL 和用户名/密码来构建 HTTP 请求?

【问题讨论】:

***.com/questions/3252851/… 使用详细标志运行 curl,看看它会生成什么。 【参考方案1】:

您可以在 php 中使用 curl。我已经为你创建了一个示例代码:

$username='username';
$password='password';
$URL='https://example.com/sandbox';
$data=array('vendor'=>123456, 'list_id'=>1000001);

$payload = json_encode( $data );

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type:application/json',
    'Accept: application/json'
));
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
$result=curl_exec($ch);
curl_close ($ch);

希望对你有帮助:D

【讨论】:

谢谢,这很有用!你为什么把钥匙放在“客户”上? “客户”=> $data @Lanbo,抱歉,这只是一个错字,我已经从我在站点 :P 中使用的文件中将这段代码分享给了你,该文件向我的服务发送了一个大客户数组。然后我做了一些更改以匹配您的 cURL 命令。我已经在示例中删除了客户。

以上是关于将命令 cURL 转换为 HTTP 请求的主要内容,如果未能解决你的问题,请参考以下文章

将 cURL 命令转换为 http put 请求

将 cURL 命令转换为 python 请求

在 Swift 中将 cUrl 命令转换为 HTTP 请求

将 Paypal cURL 命令转换为 Axios 请求

将 paypal curl 获取访问令牌请求转换为 guzzle

如何将此 curl 命令转换为 Ruby rest-client put 请求?