接口测试 微信公众号授权第三方平台(小程序)步棸

皮卡丘 · 2023年05月28日 · 最后由 tangoliver 回复于 2023年05月30日 · 8462 次阅读


我想要实现公众号能授权小程序平台

一、公众号网页授权
1.第一步:用户同意授权,获取 code
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

参数说明

appid 是公众号的唯一标识

redirect_uri 是授权后重定向的回调链接地址, 请使用 urlEncode 对链接进行处理 response_type 是返回类型,请填写 codescope 是应用授权作用域,

snsapi_base (不弹出授权页面,直接跳转,只能获取用户 openid),

snsapi_userinfo (弹出授权页面,可通过 openid 拿到昵称、性别、所在地。并且, 即使在未关注的情况下,只要用户授权,也能获取其信息 )

state 否重定向后会带上 state 参数,开发者可以填写 a-zA-Z0-9 的参数值,最多 128 字节

#wechat_redirect 是无论直接打开还是做页面 302 重定向时候,必须带此参数

forcePopup 否强制此次授权需要用户弹窗确认;默认为 false;需要注意的是,若用户命中了特殊场景下的静默授权逻辑,则此参数不生效

2.通过 code 换取网页授权 access_token
https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

appid 是公众号的唯一标识

secret 是公众号的 appsecret

code 是填写第一步获取的 code 参数

grant_type 是填写为 authorization_code

第三步:刷新 access_token(如果需要)
appid 是公众号的唯一标识

grant_type 是填写为 refresh_tokenref

resh_token 是填写通过 access_token 获取到的 refresh_token 参数

第四步:拉取用户信息 (需 scope 为 snsapi_userinfo)
access_token 网页授权接口调用凭证,注意:此 access_token 与基础支持的 access_token 不同

openid 用户的唯一标识

lang 返回国家地区语言版本,zh_CN 简体,zh_TW 繁体,en 英语

二、公众号授权第三方平台:

1.步骤一、前往微信开放平台 - 第三方平台 - 详情 - 开发配置,完成权限集与开发资料的配置。

2.获取令牌
POST https://api.weixin.qq.com/cgi-bin/component/api_component_token

返回结果示例:
{
"component_access_token": "61W3mEpU66027wgNZ_MhGHNQDHnFATkDa9-2llqrMBjUwxRSNPbVsMmyD-yq8wZETSoE5NQgecigDrSHkPtIYA",
"expires_in": 7200
}
3.预授权码

POST https://api.weixin.qq.com/cgi-bin/component/api_create_preauthcode?component_access_token=COMPONENT_ACCESS_TOKEN

4.准备 “授权回调 URI”,然后按照官方文档规则生成 PC 端的授权二维码或者移动端的授权链接,详情请看下方说明

5.、公众号/小程序管理员扫码或者访问移动端授权链接,确认同意授权给第三方平台。(如果该第三方平台帐号尚未全网发布,则需要先将要用于测试的公众号或者小程序加入第三方平台 - 开发资料的 “授权测试公众号/小程序列表”。)

6.、管理员授权确认之后,授权页会自动跳转进入回调 URI,并在 URL 参数中返回授权码和过期时间 (redirect_url?auth_code=xxx&expires_in=600)。

7.公众号授权小程序第三方平台

https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=xxxx&pre_auth_code=3.预授权码

&redirect_uri=在第六步棸中&auth_type=xxx

8.调用接口生成 authorizer_access_token,然后以该 token 调用公众号或小程序的相关 API。

####
component_appid 第三方平台方 appid
pre_auth_code 预授权码
redirect_uri 回调 URI 必须和授权地址同一个域名
auth_type 要授权的帐号类型:1 则商户点击链接后,手机端仅展示公众号、2 表示仅展示小程序,3 表示公众号和小程序都展示。如果为未指定,则默认小程序和公众号都展示。第三方平台开发者可以使用本字段来控制授权的帐号类型。

请多多指教,内容步棸是否合理

共收到 2 条回复 时间 点赞

公众号网页授权:在微信中访问第三方网页时,公众号可以通过网页授权的方式获取到用户基本信息(如 openid、微信头像和昵称),进而实现业务逻辑;

授权给第三方平台:就是将小程序或者公众号授权给第三方平台,由第三方平台帮助你代开发代运营;简单来说,就是服务商(第三方平台)给商家(小程序或者公众号)提供服务。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册