开发前须知
概述
企业微信JS-SDK包已被SDK包引入,无需在项目里重复安装。当前SDK支持企业微信JS-SDK包的方法。
企业微信官方文档:https://developer.work.weixin.qq.com/document/path/96914
以下SDK应用于代开发应用模式。
企业微信登录流程图
流程说明
- 进入首页 - 用户访问应用首页
- 检查本地用户信息 - 判断是否有本地用户信息且是否过期
- 是:直接进行企业微信账号登录
- 否:请求获取授权网页
- 获取授权 - 通过
getAuthUrl
获取重定向URL,用户授权后获得code - 获取用户信息 - 使用code调用
getUserInfo
获取userId和userTicket - 企业注册 - 调用
wxRegister
进行企业身份注册 - 账号登录 - 调用
loginFromUserid
进行企业微信账号登录 - 登录结果处理:
- 成功:登录成功,进入应用
- 失败:根据错误码处理
- 错误码22006912:企业未绑定站点,需要先绑定站点
- 其他错误:显示相应错误信息
- 站点绑定 - 如果企业未绑定站点,需要先进行站点绑定,然后重新登录
关键信息
- 后台配置:corpId由后台配置并返回给前端
- userTicket有效期:1800秒(30分钟)
- 邀请码:由区中心运营平台生成
基础功能
1. 选择通讯录成员
企业微信JS-SDK原生写法:
javascript
ww.selectEnterpriseContact({
fromDepartmentId: -1,
mode: 'multi',
type: ['department', 'user'],
selectedDepartmentIds: ['2', '3'],
selectedUserIds: ['lisi', 'lisi2']
})
鸿溟 SDK写法:
typescript
//! 注意,TS版本4^
import type { SelectEnterpriseContactReq } from '@homing/web'
homingClient.wxqy.selectEnterpriseContact({
fromDepartmentId: -1,
mode: 'multi',
type: ['department', 'user'],
selectedDepartmentIds: ['2', '3'],
selectedUserIds: ['lisi', 'lisi2']
})
2. 获取当前页面打开场景
调用该接口可以判断用户是从哪个入口打开页面,从而决定是否可以调用客户联系相关的接口。
typescript
//! 注意,TS版本4^
import type { GetContextReq } from '@homing/web'
homingClient.wxqy.getContext({
success: (res)=> {},
fail: (res)=> {},
cancel: (res)=> {},
complete: (res)=>{}
})
安装和初始化
bash
# 安装企业微信SDK
npm install @homing/web
javascript
// 初始化企业微信客户端
import { HomingClient } from '@homing/web'
const homingClient = new HomingClient({
// 配置参数
})