目录
接入说明:
任何需要调用企业微信API的应用,都需要先在企业微信管理后台创建一个应用,设置完成后,即可使用对应的功能。
不允许跨企业使用,即仅支持企业自己的app使用。
企业微信分享的设置,复用企业微信授权登录的设置,设置以后登录、分享任何一个都可以使用。
SDK名称:企业微信登录/分享SDK
主要功能:通过企业微信登录/分享SDK,企业可在自建的app引入sdk,从而可使用企业微信账号登录app,并且在app中分享消息到企业微信。
使用说明:详见本接入指南
开发者:深圳市腾讯计算机系统有限公司
隐私政策:请接入企业微信登录/分享 SDK的开发者,认真阅读《企业微信登录/分享SDK个人信息保护规则》,并确保对企业微信登录/分享SDK的接入使用情况符合上述规则的相关要求。
每个第三方应用必须要导入该sdk库,用于实现与企业微信的通信。
lib_wwapi.har文件拷贝到工程目录中"dependencies": {
"@tencent/wecom_open_sdk" : "file:lib_wwapi.har"
}
"querySchemes": [
"wxworkapi",
"https",
]
import { WWAPIFactory, WWAuthMessage, BaseMessage } from '@tencent/wecom_open_sdk';
// 基本使用
let wwapi = WWAPIFactory.createWWAPI(context)
wwapi.isWWAppInstalled(WWKApiAppType.AppTypeSaaS)//是否安装了企业微信
开发者需要配合使用企业微信提供的SDK进行授权登录请求接入。正确接入SDK后开发者移动应用会在终端本地拉起企业微信应用进行授权登录,企业微信用户确认后企业微信将回调授权临时票据(code),同时返回开发者移动应用。
HarmonyOS平台应用授权登录接入代码示例(请参考HarmonyOS接入指南):
let wwapi = WWAPIFactory.createWWAPI(context)
let msg = new WWAuthMessage.Req("", SCHEME)
msg.appId = CORPID
msg.scopes = ["snsapi_base"]
msg.agentId = ""
wwapi.sendMessage(context, msg, WWKApiAppType.AppTypeSaaS, {
handleResp: (rsp: BaseMessage | undefined | null): void => {
if (rsp !== null) {
promptAction.showToast({
message: JSON.stringify(rsp)
});
}
if (rsp instanceof WWAuthMessage.Resp) {
//rsp.code
console.info(JSON.stringify(rsp))
}
}
})
参数说明:
| 参数 | 是否必须 | 说明 |
|---|---|---|
| appId | 是 | 企业唯一标识。创建企业后显示在,我的企业 CorpID字段 |
| agentId | 是 | 应用唯一标识。显示在具体应用下的 AgentId字段 |
| scopes | 是 | 授权域,现在只支持snsapi_base |
返回说明:
| 参数 | 说明 |
|---|---|
| errorCode | ERR_OK = 0; // 成功ERR_CANCEL = 1; // 操作被取消ERR_FAIL = 2; // 操作失败 |
| code | 用户换取access_token的code,仅在ErrCode为0时有效 |
请求方式:GET(HTTPS)
请求地址:https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=ACCESS_TOKEN&code=CODE
参数说明:
| 参数 | 必须 | 说明 |
|---|---|---|
| access_token | 是 | 调用接口凭证 |
| code | 是 | 通过成员授权获取到的code,每次成员授权带上的code将不一样,code只能使用一次,5分钟未被使用自动过期 |
权限说明:
跳转的域名须完全匹配企业内任一应用的可信域名。
返回结果:
{
"UserId":"USERID"
}
| 参数 | 说明 |
|---|---|
| UserId | 成员UserID |
出错返回示例:
{
"errcode": 40029,
"errmsg": "invalid code"
}
