最近做个项目需要上传头像到一个APP接口,以上图片是这个接口的描述,试了2天了没办法,以下是自己写的代码,可以用我给的参数测试,问题估计出现在传值的格式问题,求老司机带带路测试成功后给份代码(求早点解决50车费啊,支持支付宝、微信),本人刚毕业,支持QQ长期有偿问答,QQ476973926。
//PUT方式上传二进制图片流
$id = '9885';
$url = "http://ipark.9uhd.com/api/v1/user/vip_card/".$id;//提交的地址
$targetName = './Uploads/1.jpg';//要上传的图片
$_SESSION['token'] = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.IjE1OTgi.5ViHR3_2fI6IPKaTvX3WTSbENjPzJKAdWrWT-jH6D5Q';
$headers[] = 'Access-Token:'.$_SESSION['token'];
$image = $targetName;
$PSize = filesize($image);
dump($PSize);
$picturedata = fread(fopen($image, "r"), $PSize);//读取二进制流
$post = array('image'=>$picturedata);
$post = json_encode($post);
//dump($picturedata);
$ch = curl_init ();//初始化
curl_setopt ( $ch, CURLOPT_URL, $url );//请求
//curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'put'); //设置请求方式
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $post );
$return = curl_exec ( $ch );
dump($return);
curl_close ( $ch );
返回400错误
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货