将命令 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 请求的主要内容,如果未能解决你的问题,请参考以下文章