{
“success”: false,
“error”: {
“code”: “FunctionBizError”,
“message”: “Unexpected token o in JSON at position 0”
}
}
说明api只接受json参数,将数据换成json格式传输即可。
$ch = curl_init();
// 要访问的地址
curl_setopt($ch, CURLOPT_URL, $url);
…
// 发送一个常规的Post请求
curl_setopt($ch, CURLOPT_POST, 1);
// ✅ 关键1:转为 JSON 格式
$jsonData = json_encode($data, JSON_UNESCAPED_UNICODE);
// Post提交的数据包
curl_setopt($ch, CURLOPT_POSTFIELDS,$jsonData);
// ✅ 关键2:添加 Content-Type: application/json
$headers[] = ‘Content-Type: application/json’;
$headers[] = ‘Content-Length: ‘ . strlen($jsonData);
// 关闭返回标头,否则无法解码json
curl_setopt($ch, CURLOPT_HEADER, FALSE);
// 获取的信息以文件流的形式返回
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
if (!empty($headers)){
curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers);
}
$output = curl_exec($ch);
if ($output === false) {
return ‘Curl error: ‘ . curl_error($ch);
}
curl_close($ch);
return $output;