[英]How do I send parameters in an HTTP POST request with php?
我试图在php中发送POST请求,但是发布字段在url中。
$project_no = 1711;
$group_name = "name of group";
$url = urlencode("http://api.example.org/v1/projects?auth_token=xsxxex-xxmczx-66mvmc-9133&project_no=" . $project_no . "&group_name=" . $group_name);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
var_dump($response)
上面的代码返回一个错误,指出
bool(false)
我在这里做错了什么?
您需要将vars作为postfield并将其作为附加的curl参数发送:
$data = array('project_no' => $project_no, 'group_name' => $group_name);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
如果应用程序需要json,则可以先json_encode()$ data。
$json = json_encode($data);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
我不知道您的应用程序的细节,但可能还需要将auth_token作为授权标头发送:
$headers = array(
'Authorization': 'xsxxex-xxmczx-66mvmc-9133',
//etc);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.