main.js 2.6 KB

12345678910111213141516171819202122232425
  1. import validate from "./utils/validate";
  2. import Log from "./constants/log";
  3. import globalConfig from "./globalConfig";
  4. function initEid(e = "https://eid.faceid.qq.com", o = "release", n = "https://eid-enhance.faceid.qq.com") {
  5. uni.eidBaseUrl = e,
  6. uni.eidEnvVersion = o,
  7. uni.eidBackUpUrl = n,
  8. uni.onAppShow(e => {
  9. console.log("!!!!!!监听onshow事件", e);
  10. const { scene: o } = e;
  11. if (1038 !== o) return;
  12. const { referrerInfo: n } = e, { appId: i, extraData: t } = n;
  13. if ("wx0e2cb0b052a91c92" !== i || !t) return;
  14. const { verifyDone: r, token: a } = t;
  15. r && uni.handleEidVerifyDone ? uni.eidTokenToCallback && uni.eidTokenToCallback === a && (uni.eidTokenToCallback = "", uni.reportLogToEid({ token: a, event: Log.navigateBackFromEid, errMsg: `从EID核身完成返回,token:${a},verifyDone:${r}` }), uni.handleEidVerifyDone(t)) : uni.reportLogToEid({ token: a, event: Log.navigateBackFromEidFail, errMsg: `核验未完成或者没有处理核验完成的函数,token:${a},verifyDone:${r}` })
  16. }); const i = uni.getSystemInfoSync(), { version: t } = i; uni.reportLogToEid = function (e) { const { token: o = "", event: n = "", errCode: i = "", errMsg: r = "", data: a = {} } = e, s = new Date, d = { Token: o, SourceType: Log.SourceType, SourceVersion: Log.version, EnvVersion: t, Timestamp: s.getTime(), Event: n, ErrorCode: "number" == typeof i ? i.toString() : i, ErrorMsg: r, Data: JSON.stringify(a) }; console.log("开始上报日志:", d), uni.request({ url: `${uni.eidBaseUrl}/api/common/ReportEvent`, method: "POST", data: d, success(e) { console.log("上报日志完成:", "payload:", d, "res:", e) } }) }
  17. }
  18. function startEid(e) {
  19. const { data: o, verifyDoneCallback: n } = e;
  20. if (!o || !n) return
  21. uni.reportLogToEid({ token: i, event: Log.startEidFail, errMsg: "传入的参数有误" }), void uni.showModal({ title: "提示", content: "传入的参数有误", showCancel: !1 });
  22. const { token: i } = o;
  23. if (!validate.isValidateToken(i)) return uni.reportLogToEid({ token: i, event: Log.startEidFail, errMsg: `传入的token有误,token:${i}` }), void uni.showModal({ title: "提示", content: "传入的token有误", showCancel: !1 }); uni.handleEidVerifyDone = (e => { const { token: o } = e; uni.navigateBack({ success() { uni.reportLogToEid({ token: o, event: Log.EidVerifyDone, errMsg: `验证完成,token:${o}` }), n({ token: o, verifyDone: !0 }) } }) }), uni.navigateTo({ url: `${globalConfig.normalPath}/mp_ecard_sdk/index/index?token=${i}` })
  24. }
  25. export { initEid, startEid };