小程序之AccessToken

小程序全局唯一的AccessToken是后台接口调用的重要凭据,有效期为2小时,需定时刷新。建议使用中控服务器统一管理,避免冲突。当AccessToken过期,中控服务器应提供主动和被动刷新接口,确保业务平滑过渡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 access_token

小程序全局唯一后台接口调用凭据

请求地址

GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

请求参数

属性类型必填说明
grant_typestring填写 client_credential
appidstring小程序唯一凭证
secretstring小程序唯一凭证密钥,即 AppSecret,获取方式同 appid

返回值Object

属性类型说明
access_tokenstring获取到的凭证
expires_innumber凭证有效时间,单位:秒。目前是7200秒之内的值。
errcodenumber错误码
errmsgstring错误信息

errcode 的合法值

说明最低版本
-1系统繁忙,此时请开发者稍候再试 
0请求成功 
40001AppSecret 错误或者 AppSecret 不属于这个小程序,请开发者确认 AppSecret 的正确性 
40002请确保 grant_type 字段值为 client_credential 
40013不合法的 AppID,请开发者检查 AppID 的正确性,避免异常字符,注意大小写 

 

1.1 使用案例

getAccessToken: function () {
    appdi='小程序的AppID';
    appsecret='小程序的AppSecret'
    url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' + appdi + '&secret=' + appsecret;
   wx.request({
     url: url,
     success:function(res){
       console.log(res) // 控制台输出结果
     }
   })
  }

正常返回

{"access_token": "ACCESS_TOKEN", "expires_in": 7200}

错误时返回

{"errcode": 40013, "errmsg": "invalid appid"}

 

2 access_token 的存储与更新

  • access_token 的存储至少要保留 512 个字符空间;
  • access_token 的有效期目前为 2 个小时,需定时刷新,重复获取将导致上次获取的 access_token 失效;
  • 建议开发者使用中控服务器统一获取和刷新 access_token,其他业务逻辑服务器所使用的 access_token 均来自于该中控服务器,不应该各自去刷新,否则容易造成冲突,导致 access_token 覆盖而影响业务;
  • access_token 的有效期通过返回的 expire_in 来传达,目前是7200秒之内的值,中控服务器需要根据这个有效时间提前去刷新。在刷新过程中,中控服务器可对外继续输出的老 access_token,此时公众平台后台会保证在5分钟内,新老 access_token 都可用,这保证了第三方业务的平滑过渡;
  • access_token 的有效时间可能会在未来有调整,所以中控服务器不仅需要内部定时主动刷新,还需要提供被动刷新 access_token 的接口,这样便于业务服务器在API调用获知 access_token 已超时的情况下,可以触发 access_token 的刷新流程。

 

参考:微信开发官方教程 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值