88 lines
2.3 KiB
JavaScript
Raw Permalink Normal View History

2026-07-27 11:28:33 +08:00
const request = require("../request");
const api = require("../../api");
exports.getToken = async ({ corpid = "", corpId = "", permanentCode = "" }) => {
try {
console.log("corpId", corpid , corpId);
if (!corpId) corpId = corpid;
const { success, data } = await api.getCorpApi({
corpId,
cacheType: "appToken",
type: "getCorpCache",
});
if (success) return data.value;
let suiteToken = await exports.getSuiteToken();
if (!permanentCode) {
const result = await api.getCorpApi({ type: "getCorpInfo", corpId });
const corp = result.data[0];
permanentCode = corp.permanent_code;
}
const url = `https://qyapi.weixin.qq.com/cgi-bin/service/get_corp_token?suite_access_token=${suiteToken}`;
const params = {
auth_corpid: corpId,
permanent_code: permanentCode,
};
let { expires_in, access_token, errmsg, errcode } = await request.main(
url,
params,
"POST"
);
if (access_token) {
await api.getCorpApi({
corpId,
value: access_token,
expiresIn: expires_in,
cacheType: "appToken",
type: "createCorpCache",
id: data ? data._id : "",
});
return access_token;
} else {
return {
success: false,
message: errmsg,
errcode: errcode,
};
}
} catch (error) {
return {
success: false,
message: error.message || "获取 token 时发生错误",
};
}
};
exports.getProviderAccessToken = async () => {
try {
const url = `https://qyapi.weixin.qq.com/cgi-bin/service/get_provider_token`;
const params = {
corpid: "wwe3fb2faa52cf9dfb",
provider_secret:
"v5sv-M56Amgik91OewBIzcq6ptbnlkC-QUisBq3UNErDF6Yyxd4BgBRea0_636se",
};
const { provider_access_token } = await request.main(url, params, "POST");
if (provider_access_token) {
return provider_access_token;
} else {
throw new Error("获取 provider_access_token 失败");
}
} catch (error) {
return {
success: false,
message: error.message || "获取 provider_access_token 时发生错误",
};
}
};
exports.getSuiteToken = async () => {
try {
let res = await api.getCorpApi({
type: "getSuiteToken",
});
console.log(res);
return res.suiteToken;
} catch {
return "";
}
};