Access Token
在微信公众平台接口开发中,Access Token占据了一个很重要的地位,相当于进入各种接口的钥匙,拿到这个钥匙才有调用其他各种特殊接口的权限。
access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token。正常情况下access_token有效期为7200秒,重复获取将导致上次获取的access_token失效。
公众号可以使用AppID和AppSecret调用本接口来获取access_token。AppID和AppSecret可在开发模式中获得(需要已经成为开发者,且帐号没有异常状态)。注意调用所有微信接口时均需使用https协议。
接口调用请求说明
http请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
参数说明
参数 |
是否必须 |
说明 |
grant_type |
是 |
获取access_token填写client_credential |
appid |
是 |
第三方用户唯一凭证 |
secret |
是 |
第三方用户唯一凭证密钥,既appsecret |
返回说明
正常情况下,微信会返回下述JSON数据包给公众号:
{"access_token":"ACCESS_TOKEN","expires_in":7200}
参数 |
说明 |
access_token |
获取到的凭证 |
expires_in |
凭证有效时间,单位:秒 |
错误时微信会返回错误码等信息,JSON数据包示例如下(该示例为AppID无效错误):
{"errcode":40013,"errmsg":"invalid appid"}
代码实现
<span $appid</span> = "wxbad0b4x543aa0b5e"<span ; </span><span $appsecret</span> = "ed222a84da15cd24c4bdfa5d9adbabf2"<span ; </span><span $url</span> = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=<span $appid</span>&secret=<span $appsecret</span>"<span ; </span><span $ch</span> =<span curl_init(); curl_setopt(</span><span $ch</span>, CURLOPT_URL, <span $url</span><span ); curl_setopt(</span><span $ch</span>, CURLOPT_SSL_VERIFYPEER, <span FALSE</span><span ); curl_setopt(</span><span $ch</span>, CURLOPT_SSL_VERIFYHOST, <span FALSE</span><span ); curl_setopt(</span><span $ch</span>, CURLOPT_RETURNTRANSFER, 1<span ); </span><span $output</span> = curl_exec(<span $ch</span><span ); curl_close(</span><span $ch</span><span ); </span><span $jsoninfo</span> = json_decode(<span $output</span>, <span true</span><span ); </span><span $access_token</span> = <span $jsoninfo</span>["access_token"];
特别说明
在OAuth2.0认证中,我们会看到另一种Access Token,请注意区别。