Commit e59f9c20 by wufan

feat:调整企业微信api

parent 79615955
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* @Author: wufan * @Author: wufan
* @Date: 2021-05-11 10:21:37 * @Date: 2021-05-11 10:21:37
* @LastEditors: wufan * @LastEditors: wufan
* @LastEditTime: 2021-05-11 18:05:01 * @LastEditTime: 2021-06-02 11:34:18
* @Description: 企业微信api * @Description: 企业微信api
* @@Copyrigh: © 2020 杭州杰竞科技有限公司 版权所有 * @@Copyrigh: © 2020 杭州杰竞科技有限公司 版权所有
*/ */
...@@ -12,25 +12,27 @@ import Service from "@/common/js/service"; ...@@ -12,25 +12,27 @@ import Service from "@/common/js/service";
export default class WechatApi { export default class WechatApi {
static async initConfig(params = { isAgentConfig: false, url: "" }) { static async initConfig(params = { isAgentConfig: false, url: "" }) {
return Service.Hades("anon/hades/getWxWorkJSAPISignature", { return Service.Hades("hades/anon/hades/getWxCorpJSAPISignature", {
storeId: User.getStoreId(), storeId: User.getStoreId(),
url: params.url, url: params.url,
}).then((result) => { }).then((result) => {
const res = result.result; const res = result.result;
wx.config({ if (/MicroMessenger/i.test(navigator.userAgent)) {
beta: true, // 必须这么写,否则wx.invoke调用形式的jsapi会有问题 this.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 beta: true, // 必须这么写,否则wx.invoke调用形式的jsapi会有问题
appId: res.corpId, // 必填,企业微信的corpID debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
timestamp: res.timeStamp, // 必填,生成签名的时间戳 appId: res.corpid, // 必填,企业微信的corpID
nonceStr: res.nonceStr, // 必填,生成签名的随机串 timestamp: res.timestamp, // 必填,生成签名的时间戳
signature: res.signature, // 必填,签名,见 附录-JS-SDK使用权限签名算法 nonceStr: res.nonceStr, // 必填,生成签名的随机串
jsApiList: [ signature: res.signature, // 必填,签名,见 附录-JS-SDK使用权限签名算法
"chooseImage", jsApiList: [
"shareToExternalContact", "chooseImage",
"selectExternalContact", "shareToExternalContact",
"selectEnterpriseContact", "selectExternalContact",
], "selectEnterpriseContact",
}); ],
});
}
if (params.isAgentConfig) { if (params.isAgentConfig) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
...@@ -40,10 +42,10 @@ export default class WechatApi { ...@@ -40,10 +42,10 @@ export default class WechatApi {
url: params.url, url: params.url,
}).then((result2) => { }).then((result2) => {
const res2 = result2.result; const res2 = result2.result;
wx.agentConfig({ this.agentConfig({
corpid: res2.corpId, // 必填,企业微信的corpid,必须与当前登录的企业一致 corpid: res2.corpid, // 必填,企业微信的corpid,必须与当前登录的企业一致
agentid: res2.agentId, // 必填,企业微信的应用id (e.g. 1000247) agentid: res2.agentid, // 必填,企业微信的应用id (e.g. 1000247)
timestamp: res2.timeStamp, // 必填,生成签名的时间戳 timestamp: res2.timestamp, // 必填,生成签名的时间戳
nonceStr: res2.nonceStr, // 必填,生成签名的随机串 nonceStr: res2.nonceStr, // 必填,生成签名的随机串
signature: res2.signature, // 必填,签名,见附录-JS-SDK使用权限签名算法 signature: res2.signature, // 必填,签名,见附录-JS-SDK使用权限签名算法
jsApiList: [ jsApiList: [
...@@ -71,6 +73,39 @@ export default class WechatApi { ...@@ -71,6 +73,39 @@ export default class WechatApi {
}); });
} }
static async config(config) {
return new Promise((resolve, reject) => {
console.info("wx.config", config);
wx.config(config);
wx.ready(resolve);
wx.error(reject);
}).then(
() => {
console.info("wx.ready");
},
(error) => {
console.error("wx.error", error);
throw error;
}
);
}
static async agentConfig(config) {
return new Promise((success, fail) => {
console.info("wx.agentConfig", config);
wx.agentConfig({ ...config, success, fail });
}).then(
(res) => {
console.info("wx.agentConfig success", res);
return res;
},
(error) => {
console.error("wx.agentConfig fail", error);
throw error;
}
);
}
static getCurExternalContact() { static getCurExternalContact() {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
wx.ready(() => { wx.ready(() => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment