第三方应用授权

最近更新时间:2024-11-29 15:43:32

我的收藏

使用场景

业务侧需要获取用户信息时,可通过该方法获取用户的 open_id,实现免登授权。调用方式如下:
先按照方案一,尝试通过 JS-SDK 获取 auth_code,若成功则通过该 auth_code 换取用户 access_token 并调用 API。
若失败,则通过方案二通过授权链接获取 auth_code。




方案一:JS-SDK 获取 Auth_code

方案概述

已授权的用户,调用 JSSDK 可以获取授权码,否则,需要开发者跳转至授权地址,请参见 引用方法
注意:
授权码需要发送给后台,通过临时授权码 auth_code 获取 access_token,临时授权码只能使用一次,有效期为5min。
每次换取的 access_token 和 refresh_token 都需要被存取并替换已有的 tokens,旧的 token 将在新的 token 获取之后失效,开发者应在实现逻辑上避免出现同时使用两个 token 的情况,例如多个任务各自获取 token 导致先申请的 token 失效而出现报错。

接口描述

接口名:permission.requestAgentAuthCode
描述:实现第三方应用获取免登授权码。
支持的客户端:iOS、Android、Windows、Mac。
支持的版本:2.17.0版本以上。
是否需要鉴权:

输入参数

RequestAuthCodeParam 参数
参数名称
参数类型
参数描述
sdkId
String
应用 ID

输出参数

返回 Promise<void>。

示例

wemeet.permission.requestAgentAuthCode({
sdkId: "xxxxxx",
})
.then((resp) => {
const code = resp.authCode;
})
.catch((err) => {
//
});


方案二:通过授权链接获取 auth_code

方案概述

如需申请用户授权码,须在腾讯会议的 OAuth2.0 授权页 完成(如下图示例),在该页面上腾讯会议用户可以接受或拒绝应用程序的授权申请。




实现方案

您可以构造如下跳转链接,也可以调用相关接口进行页面跳转。用户会基于此链接跳转到腾讯会议授权页面,完成授权后会重定向跳转到指定的 redirectURI,并追加临时授权码 auth_code 及 state 两个参数,具体调用方法请参见 第三方应用鉴权(OAuth2.0)
注意:
企业账户进行第一次授权时,会向该企业的管理员申请应用使用权限,需要管理员审批通过后才能授权。

方式一:拼装跳转链接示例

https://meeting.tencent.com/marketplace/authorize.html?corp_id= xxxxxx&sdk_id= xxxxxx&redirect_uri= xxxxxx&state= xxxxxx

方式二:调用接口,实现从当前页面跳转到授权页

接口名:permission.requestAuth
描述:应用自动跳转到授权页,实现发起授权。
支持的客户端:iOS、Android、Windows、Mac。
支持的版本:2.17.0及以上版本。
是否需要鉴权:
输入参数
RequestAuthCodeParam 参数:
参数名称
参数类型
参数描述
corpId
String
应用企业 ID。
redirectURI
String
授权后重定向页面的 URI。
sdkId
String
应用 ID。
state
String
重定向后会透传的 state 参数,开发者可以填 写 a-zA-Z0-9 的参数值,最多128字节。
输出参数
返回 <void>。
代码示例
wemeet.permission.requestAuth({
corpId: "xxxxxx",
sdkId: "xxxxxx",
redirectURI: "https://xxxxxx",
state: "xxx",
});