initSdk.ts 1.25 KB
Newer Older
Aivs's avatar
Aivs committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
import apis from '../jsSdk/apis';
import {jsSdk} from "../../index";

export interface Config {
  corpId: string;
  agentId: string;
}

export type GetSignatures = () => Promise<TicketRes>

/**
 * 初始化企业微信 SDK 库
 * config: 基础信息配置
 * getSignatures: 获取签名函数
 */
const initSdk = async (config: Config, getSignatures: GetSignatures) => {
  const { corpId, agentId } = config;
  // 获取 ticket
Aivs's avatar
Aivs committed
19
  
Aivs's avatar
Aivs committed
20
  const signaturesRes = await getSignatures();
Aivs's avatar
Aivs committed
21 22 23 24
  console.log(signaturesRes)
  // alert('signaturesRes   '+JSON.stringify(signaturesRes))
  const configRes = await jsSdk.config({
    beta: true,
Aivs's avatar
Aivs committed
25
    debug: false, 
26
    appId: corpId,
Aivs's avatar
Aivs committed
27 28 29 30 31 32
    timestamp: signaturesRes.meta.timestamp,
    nonceStr: signaturesRes.meta.noncestr,
    signature: signaturesRes.corp.signature,
    jsApiList: apis,
  })
  console.log(configRes+"configRes")
Aivs's avatar
Aivs committed
33 34 35 36
  const agentConfigRes = await jsSdk.agentConfig({
    corpid: corpId,
    agentid: agentId,
    timestamp: signaturesRes.meta.timestamp,
Aivs's avatar
Aivs committed
37
    nonceStr: signaturesRes.meta.noncestr,
Aivs's avatar
Aivs committed
38 39 40
    signature: signaturesRes.app.signature,
    jsApiList: apis,
  }).catch(e => {
Aivs's avatar
Aivs committed
41
    console.log('错误信息'+JSON.stringify(e))
Aivs's avatar
Aivs committed
42 43 44 45 46 47 48
  });
  console.log('agentConfig res', agentConfigRes);

  wx.error(console.error);
};

export default initSdk