access_token和authorizer_access_token有什么不同?

来源:2-3 微信小程序:用户裂变和电商落地

超人迪加123

2024-10-03

老师您好,在微信小程序文档中https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/user-login/checkSessionKey.html,检验登录态方法checkSessionKey,当中的access_token参数,文档中解释是:(接口调用凭证,该参数为 URL 参数,非 Body 参数。使用access_token或者authorizer_access_token)。这里不明白这两个有什么不同?

希望老师可以解释清楚一些。

写回答

1回答

AI小慕

2024-11-12

解答

核心问题access_tokenauthorizer_access_token在微信小程序中的区别。

在微信生态中,access_tokenauthorizer_access_token是两种不同类型的访问令牌,主要用于不同的场景下授权应用或服务进行API调用。下面是两者的主要区别:

  • access_token

    • 用于普通开发者账号下的小程序、公众号等。
    • 获取方式通常是通过AppID和AppSecret向微信公众平台请求得到。
    • 它的有效期为2小时(可续期),并且具有较高的安全要求,不应被泄露给第三方。
    • 主要用途包括但不限于获取用户信息、发送模板消息等。
  • authorizer_access_token

    • 这个概念更常见于第三方平台开发中。当一个小程序授权给某个第三方平台时,该平台会获得一个authorizer_access_token来代表这个小程序执行操作。
    • 获取过程涉及更多步骤,首先需要通过授权流程让小程序同意第三方平台的权限请求,然后才能使用特定接口获取到此token。
    • 有效期同样也是2小时,并且与直接使用的access_token相比,它允许第三方平台代表原小程序执行一系列受限的操作。
    • 主要应用于支持多个小程序的服务提供商场景,比如SaaS服务商提供的解决方案。

对于你提到的具体API checkSessionKey,这里可以使用任一类型的token,但选择哪一种取决于你是以第一方身份(即直接管理的小程序)还是作为第三方服务的身份来调用API。如果你是在为自己直接管理的应用编写代码,则应使用access_token;如果是在构建服务于其他小程序的平台,则可能需要用到authorizer_access_token

根据你的描述,并没有涉及到具体的代码示例需要修复,因此这里不再提供额外的代码块。希望上述解释能够帮助你理解这两个概念之间的差异。如果有更多技术细节或其他方面的问题,请随时提问。

1
0

0到1快速掌握Java全栈开发,玩转微信生态

探索热门私域营销领域,提升综合竞争力

203 学习 · 38 问题

查看课程