微信小程序第三方开发平台注册、授权、上传、审核、发布流程(2)- 授权

news/2024/7/20 1:56:11 标签: 小程序

授权(2)

https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Authorization_Process_Technical_Description.html
在这里插入图片描述

开发步骤:

一、第三方平台方获取预授权码(pre_auth_code)
① 获取component_access_token:
请求地址:

POST https://api.weixin.qq.com/cgi-bin/component/api_component_token

参数类型说明
component_appidstring第三方平台 appid
component_appsecretstring第三方平台 appsecret
component_verify_ticketstring微信后台推送的 ticket

注:微信端会定时推送消息到配置好的授权事件接收URL(创建三方平台时填写的,可在该三方详情中查看) 上,我们需要保存这个component_verify_ticket和 不断更新,component_verify_ticket必须保持是微信端推送的最新一个

返回结果示例:
{
  "component_access_token": "61W3mEpU66027wgNZ_MhGHNQDHnFATkDa9-2llqrMBjUwxRSNPbVsMmyD-yq8wZETSoE5NQgecigDrSHkPtIYA",
  "expires_in": 7200
}

② 获取pre_auth_code:
请求地址:

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

参数类型说明
component_access_tokenstring第三方平台component_access_token,不是authorizer_access_token
component_appidstring第三方平台 appid
返回结果示例:
{
  "pre_auth_code": "Cx_Dk6qiBE0Dmx4EmlT3oRfArPvwSQ-oa3NL_fwHM7VI08r52wazoZX2Rhpz1dEw",
  "expires_in": 600
}

二、引入用户进入授权页

在这里插入图片描述

第三方平台型服务商可以在自己的网站中放置“微信公众号授权”或者“小程序授权”的入口,或生成授权链接放置在移动网页中,引导公众号和小程序管理员进入授权页。

两种方式

方式一:授权注册页面扫码授权(二维码)
授权页网址为:

https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=xxxx&pre_auth_code=xxxxx&redirect_uri=xxxx&auth_type=xxx。

方式二:点击移动端链接快速授权(链接地址)

第三方平台型服务商可以生成授权链接,将链接通过移动端直接发给授权管理员,管理员确认后即授权

授权页网址为:

https://mp.weixin.qq.com/safe/bindcomponent?action=bindcomponent&no_scan=1&component_appid=xxxx&pre_auth_code=xxxxx&redirect_uri=xxxx&auth_type=xxx&biz_appid=xxxx#wechat_redirect

参数必填参数说明
component_appid第三方平台方 appid
pre_auth_code预授权码
redirect_uri回调 URI
auth_type要授权的帐号类型, 1 则商户扫码后,手机端仅展示公众号、2 表示仅展示小程序,3 表示公众号和小程序都展示。如果为未指定,则默认小程序和公众号都展示。第三方平台开发者可以使用本字段来控制授权的帐号类型。
biz_appid指定授权唯一的小程序或公众号

注:auth_type、biz_appid 两个字段互斥。

三、用户确认并同意登录授权给第三方平台方

用户进入第三方平台授权页后,需要确认并同意将自己的公众号或小程序授权给第三方平台方,完成授权流程。

四、授权后回调 URI,得到授权码(authorization_code)和过期时间

授权流程完成后,授权页会自动跳转进入回调 URI,并在 URL 参数中返回授权码和过期时间(redirect_url?auth_code=xxx&expires_in=600)

五、利用授权码调用公众号或小程序的相关 API

在得到授权码后,第三方平台方可以使用授权码换取授权公众号或小程序的接口调用凭据(authorizer_access_token,也简称为令牌),再通过该接口调用凭据,按照公众号开发者文档或小程序开发文档的说明,去调用公众号或小程序相关 API。 (能调用哪些 API,取决于用户将哪些权限集授权给了第三方平台型服务商,也取决于公众号或小程序自身拥有哪些接口权限),使用 JS SDK 等能力。

① 使用授权码换取公众号或小程序的接口调用凭据和授权信息
请求地址:

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

请求参数说明:
参数类型必填说明
component_access_tokenstring第三方平台component_access_token,不是authorizer_access_token
component_appidstring第三方平台 appid
authorization_codestring授权码, 会在授权成功时返回给第三方平台
POST 数据示例:
{
	"component_appid":"appid_value" ,
	"authorization_code": "auth_code_value"
}
请求成功后拿到
  • authorizer_access_token:授权方接口调用凭据(在授权的公众号或小程序具备API权限时,才有此返回值),也简称为令牌,后面调用小程序待开发的api中使用,
  • authorizer_refresh_token:接口调用凭据刷新令牌(在授权的公众号具备API权限时,才有此返回值),刷新令牌主要用于第三方平台获取和刷新已授权用户的access_token,只会在授权时刻提供,请妥善保存。 一旦丢失,只能让用户重新授权,才能再次拿到新的刷新令牌
  • authorizer_appid 授权方 appid,用于获取授权方账号基本信息
② 获取授权方的帐号基本信息
请求地址:

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

请求参数说明:
参数类型必填说明
component_access_tokenstring第三方平台component_access_token,不是authorizer_access_token
component_appidstring第三方平台 appid
authorizer_appidstring授权方 appid
POST 数据示例:
{
  "component_appid": "appid_value" ,
  "authorizer_appid": "auth_appid_value"
}
返回的小程序信息存数据库:

在这里插入图片描述

  • 微信小程序第三方开发平台注册、授权、上传、审核、发布流程(1)- 注册
  • 微信小程序第三方开发平台注册、授权、上传、审核、发布流程(3)- 上传

http://www.niftyadmin.cn/n/908617.html

相关文章

最近火到不行的微信小程序的常识

满网都是微信小程序,技术dog们不关注都不行了。先别忙着去学怎么开发小程序,先纠正一下你对微信小程序的三观吧~~~~ 小程序目前被炒得沸沸扬扬,无数媒体和企业借机获取阅读流量。 这再次证明一点,微信想让什么火,真的就…

微信小程序第三方开发平台注册、授权、上传、审核、发布流程(3)- 上传

上传(3) 一、小程序模板开发 第三方平台帮助旗下已授权的小程序进行代码管理时,需先开发完成小程序模版,再将小程序模版部署到旗下小程序帐号中,具体流程如下: 第一步:绑定开发小程序 1&…

如何取得路径的短路径和短文件名

这个用 dir命令即可。在开始——运行中输入 cmd 打开命令提示符。直接 执行 dir /x 命令,如图所示: 转载于:https://www.cnblogs.com/wangchaoguo-li/p/Window.html

微信小程序人脸识别认证-微信开放接口

摘要 微信小程序使用人脸识别,只支持微信自己开放的接口。使用第三方的,微信会审核不通过。后续如果开放第三方,请麻烦您留言告诉我。 目前并未全面开放,特定的主体类目邮件形式申请开放。具体参考下方官方发布的查看。 官方链接…

编程:字符串加密

Question: 古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报: 请编写一个程序,使用上述算法加密或解密用户输入的英文字串。 要求设计思想、程序流程图、源代码、结果截图。 Answer: 设计思想:先将用户输入的英文字串通过St…

微信小程序-canvas 2d带动画的半圆形刻度进度条

效果图 文章目录效果图实现思路(1)初始化(2)绘制背景半圆刻度(3)绘制百分比刻度(带动画)(4)绘制小三角(带动画)(5&#xf…

微信小程序-环形图(带动画)

效果图 思路 使用一个canvas绘制(带动画);通过画弧线,设置线宽,来实现圆环效果;计算每段圆弧的起始角度和终止角度,用递归做动画;绘制完第一段圆弧块–>再绘制下一块,…

LInux下设置账号有效时间 以及 修改用户名(同时修改用户组名和家目录)

在linux系统中,默认创建的用户的有效期限都是永久的,但有时候,我们需要对某些用户的有效期限做个限定!比如:公司给客户开的ftp账号,用于客户下载新闻稿件的。这个账号是有时间限制的,因为是付费…