在微信文档中一共提供了两个access_token;一个是伪全局配置的Access_token;一个是在微信网页授权时的小Access_token

很多刚刚接触微信开发的人经常会混淆这两个的作用;

我们可以分别从其概念、作用域、获取方式上做文章;

第一个Access_token 我称之为伪全局配置的access_token;

           概念:   access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效

           作用域:除微信网页授权时的接口中不能使用此access_token,其他API接口均可使用,因而为伪全局值;

           获取方式:需要的参数:AppID&AppSecret。记得在基础篇提到的微信身份证号码和密码了吧,在这里就可以使用;

                GET请求的API地址

                                    $url ='https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.C('APPID').'&secret='.C('APPSECRET')

                                    $result= get($url);

                  注意:get是一个方法;

                                    返回值:{"access_token":"ACCESS_TOKEN","expires_in":7200}  分别是密钥和生存时间

                                    获取到access_token后可将文件临时存储到文件中,由于其生存时间只有2小时,因而在实际开发过程中,需要不断地刷新请求获取新的密钥;    

第二个Access_Token 我称之为小access_token

         概念:微信网页授权是通过OAuth2.0机制实现的,在用户授权给公众号后,公众号可以获取到一个网页授权特有的接口调用凭证(网页授权access_token),通过网页授权access_token可以进行授权后接口调用,如获取用户基本信息; 

          作用域:在页面授权中access_token是通过code换取的,而access_token又是一把换取openid的钥匙,而openid又是用户唯一标识,用来获取用户基本的钥匙;

          获取方式:用户点击按钮进入授权页面并确认授权->服务器返回code给开发者,开发者将code和AppID,AppSecrect 写入API中发送给服务器 返回access_Token;

            

获取微信AccessToken失败 微信缺少accesstoken_Access

 

            用户点击确认登录-->返回code值给开发者;

 

人的一生中,唯一能够预见的失败和最大的挑战莫过于从不敢去挑战;