玩转微信公号开发(四)——获取access_token与上传多媒体文件

access_token

access_token是开发者访问其他微信接口的凭证,一个微信公众号,在同一时刻,只能有一个access_token,有效时间两小时

具体的获取方法如下

1
2
3
4
5
  $url   = "https://api.weixin.qq.com/cgi-bin/token?"
      ."grant_type=client_credential&appid=".$appId."&secret=".$appSecret;
  $r     = Http::httpsGet($url);
  $r     = json_decode($r, true);
  $token = isset($r['access_token']) ? urldecode($r['access_token']) : false;

其中,httpsGet:

1
2
3
4
5
6
7
8
9
10
11
12
  function httpsGet($url){
    $ch = curl_init(); 
    $header[] = "Content-type: text/plain";
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    $response = curl_exec($ch);
    curl_close($ch);
    $result = trim(urldecode($response));
    return $result;
  }

鉴于access_token的“广泛应用”和诸多限制,我们的做法是为它做了一个redis缓存,每小时刷新一次,所有用到access_token项目都从这个缓存里取

上传多媒体文件

~~其实,俺们的项目里,还没用到过这个功能,但既然做教程,就尽量做的完整些,下面内容只是微信官方文档的整理摘录

上传地址:http://file.api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE

type: image/voice/video/thumb(缩略图)

POST字段名:media

(看这格式,还是写个html页面比较合适)

限制:
图片(image): 128K,支持JPG格式
语音(voice):256K,播放长度不超过60s,支持AMR\MP3格式
视频(video):1MB,支持MP4格式
缩略图(thumb):64KB,支持JPG格式

下载多媒体文件

http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID

~~没啥可说的,一目了然

————
转载请注明出处:http://www.jiangkl.com/2014/01/access-token_media/

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

*