600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 微信公众号(四)——上传永久素材

微信公众号(四)——上传永久素材

时间:2021-02-13 15:10:21

相关推荐

微信公众号(四)——上传永久素材

微信公众号在使用的接口的时候是通过media_id来进行的,所以在使用的接口的时候我们往往需要先上传素材,支持上传素材的格式和限制如下

图片(image): 2M,支持PNG\JPEG\JPG\GIF格式。

语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式。

视频(video):10MB,支持MP4格式。

缩略图(thumb):64KB,支持JPG格式。

上传永久素材:

/*** 上传永久素材(图片)*/public function media_id_by_img(){ $type = "image"; //声明上传的素材类型,这里为image$token = $this->getSessionAccessToken();//调用接口需要获取token,这里使用一个封装好的调取access_token的函数$url = "https://api./cgi-bin/material/add_material?access_token=".$token."&type=".$type;//这里是请求地址,token和素材类型通过get方式传递$file_path = "/data/web/crm/kid2/public/cxwl.jpg";//这里声明文件的路径,使用绝对路径// $file_data = array('media' => '@'.$file_path);//传递的数组,方式一:使用'@'符号加上文件的绝对路径来指引文件。这种方式适合PHP5.5之前的版本,$file_data = array("media" => new \CURLFile($file_path));//传递的数组,方式二:从PHP5.5版本以后,引入了新的CURLFile 类来指向文件,参数传入的也是绝对路径$result=$this->postcurl($url,$file_data);dump($result);//返回结果}

getSessionAccessToken:

/*** 获取AccessToken* @return mixed*/public function getSessionAccessToken(){//第一次获取 或者已经超时 重新获取access_token//get请求方式$url = "https://api./cgi-bin/token?grant_type=client_credential&appid=".APP_ID."&secret=".SECRET;$access_token_Arr = $this->https_request($url);// dump($access_token_Arr['access_token']);exit();return $access_token_Arr['access_token'];}

postcurl:

/*** 请求接口方法* @param $url* @param null $data* @return mixed*/function postcurl($url,$data = null){$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);if (!empty($data)){curl_setopt($ch, CURLOPT_POST, TRUE);curl_setopt($ch, CURLOPT_POSTFIELDS, $data);}curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$output = curl_exec($ch);curl_close($ch);return $output=json_decode($output,true);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。