@myt: 你好,我也碰到这样的问题,版本问题,但是我不知道怎么改,麻烦帮下忙。。
public function _request($curl,$https='true',$method='GET',$data='null')
{
$ch=curl_init();//初始化会话
// curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false);
//设置
curl_setopt($ch, CURLOPT_URL, $curl); //curl为地址
curl_setopt($ch, CURLOPT_HEADER, false); //不要url的头部
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //输出返回的内容
if($https)
{
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //不需要验证主机
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); //不需要证书验证
}
if($method=='POST')
{
curl_setopt($ch, CURLOPT_POST, true);
@curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //数据处理
}
//执行会话
$content=curl_exec($ch);
//关闭会话
curl_close($ch);
return $content;
}
//素材上传(多媒体上传)
public function _createMedia($type,$file){
$curl='https://api.weixin.qq.com/cgi-bin/media/upload?access_token='.$this->_getAccessToken().'&type='.$type;
// $data = array(
// 'type' => $type,
// 'media' =>curl_file_create('/PATH/TO/FILE')
// 'media' => new CURLFile('/PATH/TO/FILE')
// );
$data['type']=$type;
$data['media']='@'.$file;
$content=$this->_request($curl,true,'POST',$data);
file_put_contents('./media',$content);//将其保存到文件
}
错误:{"errcode":41005,"errmsg":"media data missing hint: [QNpKnA0242e292]"}