ecology9-src4js-tools
Version:
src4js-tools
832 lines (801 loc) • 32.6 kB
JavaScript
window.onerror = function (msg, url, line, col, error) {
window.localStorage['emDebug'] == '1' && alert(JSON.stringify(arguments))
};
(function () {
var getJSONObj = function (key) {
if (!window.localStorage[key]) {
return null;
}
try {
return JSON.parse(window.localStorage[key]);
}
catch (e) {
return {};
}
};
var getFd = function (values) {
var fd = '';
for (var p in values) {
if (values.hasOwnProperty(p)) {
var target = values[p];
target = target === void 0 ? '' : target;
var item = encodeURIComponent(target);
fd += p + '=' + item + '&';
}
}
return fd;
}.bind(this);
function getFetchParams(method, params, includeCredentials, useJson) {
var obj = {
method: method,
headers: {
'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',
'X-Requested-With': 'XMLHttpRequest'
}
};
if (window.localStorage.m_access_token) {
obj.headers.__emobile7TokenName = window.localStorage.m_access_token;
obj.headers.mobiletoken = window.localStorage.m_access_token;
obj.headers['Emobile7-Token-Name'] = window.localStorage.m_access_token;
}
if (includeCredentials && (window.server === '' || window.server === undefined)) {
obj.credentials = 'include';
}
if (Object.keys(params).length > 0 && method.toUpperCase() !== 'GET') {
obj.body = getFd(params);
}
if (useJson) {
obj.headers['Content-Type'] = 'application/json; charset=utf-8';
obj.body = JSON.stringify(params);
}
return obj;
};
var checkReject = function (obj) {
var isFalse = false;
if (obj.errorCode && obj.errorCode === '001') { // session异常
console && console.log('session过期');
isFalse = true;
}
else if (obj.errorCode && obj.errorCode === '002') { // session异常
console && console.log('登陆超时');
isFalse = true;
}
else if (typeof obj.status !== 'undefined' && (!obj.status || obj.status === 'false')) {
console && console.log(JSON.stringify(obj));
isFalse = true;
}
return isFalse;
};
var callApi = function (options) {
// if (window.e9Hooks && window.e9Hooks.rewriteCallApi) {
// return window.e9Hooks.rewriteCallApi(options);
// }
var url = options.url || '';
var method = options.method || 'GET';
var params = options.params || {};
var type = options.type || 'json';
var includeCredentials = options.includeCredentials !== false ? true : false;
var useJson = options.useJson || false;
var _url = url;
var server = window.server || '';
var ua = window.navigator.userAgent;
var inMobile = (/.*E-Mobile7.*/.test(ua)
|| /.*E-Mobile\/7.*/.test(ua)
|| /.*e-mobile\/7.*/.test(ua)
|| /.*MicroMessenger.*/.test(ua)
|| /.*DingTalk.*/.test(ua)
|| /Qing\/.*;(iOS|iPhone|Android).*/.test(ua)
|| /.*e-mobile-xp.*/.test(ua)
|| /.*HuaWei-AnyOffice.*/.test(ua)
|| /.*Lark.*/.test(ua)
)
var uajugde = ua.indexOf('Mobi') > -1 || ua.indexOf('iPh') > -1 || ua.indexOf('480') > -1
if (inMobile || uajugde) {
params._ec_ismobile = true;
params._ec_browser = ua.browser;
params._ec_browserVersion = ua.version;
params._ec_os = ua.os;
params._ec_osVersion = ua.osVersion;
params.ismobile = 1;
}
if (/\?/.test(_url)) {
var urlParams = getFrameParams(_url);
_url = _url.slice(0, url.indexOf('?'))
// params = Object.assign({}, params, urlParams);
for (var key in urlParams) {
if (urlParams.hasOwnProperty(key)) {
var element = urlParams[key];
params[key] = element;
}
}
}
if (getJSONObj('customSessionKey')) {
var customSessionKey = getJSONObj('customSessionKey');
params[customSessionKey.keyName] = customSessionKey.keyValue;
}
if (window.wm_test_accesskey) {
params['wm_test_accesskey'] = window.wm_test_accesskey;
}
_url = server + _url;
if (method.toUpperCase() === 'GET' && Object.keys(params).length > 0) {
var c = '?';
if (/\?/.test(_url)) {
c = '&';
}
_url = _url + c + getFd(params);
}
if (method.toUpperCase() === 'GET' && !/__random__/.test(_url)) {
var c = '?';
if (/\?/.test(_url)) {
c = '&';
}
_url += c + '__random__=' + new Date().getTime();
}
function evil(fn) {
var Fn = Function; // 一个变量指向Function,防止有些前端编译工具报错
return new Fn('return ' + fn)();
}
if (window.e9ssoMobileConfig && window.e9ssoMobileConfig.inUse && window.e9ssoMobileConfig.callapi_params_handler) {
var res = window.e9ssoMobileConfig.callapi_params_handler(_url, method, params, includeCredentials, useJson);
_url = res.url;
method = res.method;
params = res.params;
includeCredentials = res.includeCredentials;
useJson = res.useJson;
}
return new Promise(function (resolve, reject) {
var para = getFetchParams(method, params, includeCredentials, useJson);
var l = function () {
_url = _url.indexOf('http') === 0 || !window.localAppOrigin ? _url : window.localAppOrigin + _url;
console.log('urlAPI:', window.localAppOrigin, _url);
window.em.invoke('request', {
url: _url, //仅为示例,并非真实的接口地址
method: method.toUpperCase(),
data: params,
header: para.headers,
success: function (res) {
var data = res.data;
if (window.e9ssoMobileConfig && window.e9ssoMobileConfig.inUse && window.e9ssoMobileConfig.callapi_response_handler) {
data = window.e9ssoMobileConfig.callapi_response_handler(data, reject, xhr.response);
}
if (type === 'json' && typeof (data) === 'string') {
try {
data = JSON.parse(data);
} catch (error) {
data = data || '{}';
data = evil('(' + data + ')'); // JSON.parse 解析反斜杠报错处理
// alert('fetch 数据处理异常: ' + error);
}
}
if (data.code == 401 && window.localStorage['m_refresh_token']) {
callApi({
url: '/api/ec/dev/app/refreshToken',
method: 'POST',
params: { m_refresh_token: window.localStorage['m_refresh_token'] },
type: 'json',
}).then(function (res) {
if (!res.status && res.code == 10002) {
window.localStorage['m_access_token'] = ''
window.localStorage['m_refresh_token'] = ''
alert('10002 登录超时,请重新登录')
}
if (res.m_access_token) {
window.localStorage['m_access_token'] = res.m_access_token
window.location.reload();
} else {
alert('m_access_token 不存在,重登陆失败')
}
})
resolve({ status: true });
}
if (data.em_url_open) {
window.em_url_open = data.em_url_open;
}
if (data.ec_id) {
window.localStorage.emobile_ec_id = data.ec_id
}
// // 单点登录接口返回 code无效单独处理
// if (
// (data.status === "false" || !data.status) &&
// data.msg &&
// /\"errcode\"\:91011/.test(data.msg)
// ) {
// // alert("登陆超时,请关闭页面重新打开");
// // reject(url + 'fetch 请求异常: ' + (data.errorCode || JSON.stringify(data)));
// reject("登陆超时,请关闭页面重新打开");
// }
if (window.rewriteApiData) {
data = window.rewriteApiData(_url, params, data);
}
if (type === 'json' && data && data.status === 'false') {
resolve(data);
console && console.log('数据异常:' + JSON.stringify(data));
}
else if (!data.status && (data.showMsg || data.showType === 'msg')) {
resolve(data);
alert('数据异常:' + JSON.stringify(data));
}
else if (!data.status && (data.showModal || data.showType === 'modal')) {
resolve(data);
alert('数据异常:' + JSON.stringify(data));
}
else if (type === 'json' && checkReject(data)) {
console && console.log('数据异常:' + JSON.stringify(data));
if (/\/api\/ecode\/sync/.test(url)) {
resolve({ status: true });
}
if ((
/.*MicroMessenger.*/.test(ua)
|| /.*DingTalk.*/.test(ua)
|| /.*Lark.*/.test(ua)
) && window.em_url_open
&& window.localStorage.emobile_ec_id
) {
window.location.href = window.em_url_open + '/wxapi/wxclienturl/redirect?em_sys_id=' + window.localStorage.emobile_ec_id + '&redirect_url=' + encodeURIComponent(location.href)
resolve();
return;
}
reject();
}
else {
resolve(data);
}
}
});
}
if (!window.localAppOrigin && window.getLocalAppInfo) {
// window.getEcAddress(()=>l());
window.getLocalAppInfo.then(l)
} else {
l();
}
// var xhr = new XMLHttpRequest();
// xhr.open(method.toUpperCase(), _url, true);
// if (useJson === true) {
// xhr.setRequestHeader("Content-Type", "application/json; charset=utf-8");
// } else {
// xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
// }
// if (window.localStorage['m_access_token']) {
// if (window.localStorage['mobileTokenName']) {
// xhr.setRequestHeader(window.localStorage['mobileTokenName'], window.localStorage['m_access_token']);
// } else {
// xhr.setRequestHeader("mobiletoken", window.localStorage['m_access_token']);
// }
// }
if (window.localStorage.emToken) {
window.localStorage.removeItem('ecemtoken')
}
// xhr.withCredentials = includeCredentials;
// xhr.onreadystatechange = function () {
// if (xhr.readyState == 4 && xhr.status == 200) {
// var data = xhr.responseText;
// if (window.e9ssoMobileConfig && window.e9ssoMobileConfig.inUse && window.e9ssoMobileConfig.callapi_response_handler) {
// data = window.e9ssoMobileConfig.callapi_response_handler(data, reject, xhr.response);
// }
// if (type === 'json' && typeof (data) === 'string') {
// try {
// data = JSON.parse(data);
// } catch (error) {
// data = data || '{}';
// data = evil('(' + data + ')'); // JSON.parse 解析反斜杠报错处理
// // alert('fetch 数据处理异常: ' + error);
// }
// }
// if (data.code == 401 && window.localStorage['m_refresh_token']) {
// callApi({
// url: '/api/ec/dev/app/refreshToken',
// method: 'POST',
// params: { m_refresh_token: window.localStorage['m_refresh_token'] },
// type: 'json',
// }).then(function (res) {
// if (!res.status && res.code == 10002) {
// window.localStorage['m_access_token'] = ''
// window.localStorage['m_refresh_token'] = ''
// alert('10002 登录超时,请重新登录')
// }
// if (res.m_access_token) {
// window.localStorage['m_access_token'] = res.m_access_token
// window.location.reload();
// } else {
// alert('m_access_token 不存在,重登陆失败')
// }
// })
// resolve({ status: true });
// }
// if (data.em_url_open) {
// window.em_url_open = data.em_url_open;
// }
// if (data.ec_id) {
// window.localStorage.emobile_ec_id = data.ec_id
// }
// // // 单点登录接口返回 code无效单独处理
// // if (
// // (data.status === "false" || !data.status) &&
// // data.msg &&
// // /\"errcode\"\:91011/.test(data.msg)
// // ) {
// // // alert("登陆超时,请关闭页面重新打开");
// // // reject(url + 'fetch 请求异常: ' + (data.errorCode || JSON.stringify(data)));
// // reject("登陆超时,请关闭页面重新打开");
// // }
// if (window.rewriteApiData) {
// data = window.rewriteApiData(_url, params, data);
// }
// if (type === 'json' && data && data.status === 'false') {
// resolve(data);
// console && console.log('数据异常:' + JSON.stringify(data));
// }
// else if (!data.status && (data.showMsg || data.showType === 'msg')) {
// resolve(data);
// alert('数据异常:' + JSON.stringify(data));
// }
// else if (!data.status && (data.showModal || data.showType === 'modal')) {
// resolve(data);
// alert('数据异常:' + JSON.stringify(data));
// }
// else if (type === 'json' && checkReject(data)) {
// console && console.log('数据异常:' + JSON.stringify(data));
// if (/\/api\/ecode\/sync/.test(url)) {
// resolve({ status: true });
// }
// if ((
// /.*MicroMessenger.*/.test(ua)
// || /.*DingTalk.*/.test(ua)
// || /.*Lark.*/.test(ua)
// ) && window.em_url_open
// && window.localStorage.emobile_ec_id
// ) {
// window.location.href = window.em_url_open + '/wxapi/wxclienturl/redirect?em_sys_id=' + window.localStorage.emobile_ec_id + '&redirect_url=' + encodeURIComponent(location.href)
// resolve();
// return;
// }
// reject();
// }
// else {
// resolve(data);
// }
// }
// }
// xhr.send(getFd(params));
}.bind(this));
};
var loadEmFile = function (res, rs, rj, emUrl) {
loadjs.isDefined('em')
? loadjs.ready('em', function () { initEM(res, rs, rj, false, emUrl); }.bind(this))
: loadjs(emUrl, 'em', {
success: function () { window.wm_test_sso_em_loaded_end = new Date().getTime(); initEM(res, rs, rj, false, emUrl); }.bind(this),
error: function (res) {
if (/^https/.test(location.href) !== /^https/.test(emUrl)) {
rj({ msg: 'jem.js 加载失败:em与ec协议不一致' });
} else {
rj({ msg: 'jem.js 加载失败:' + emUrl });
}
}.bind(this),
numRetries: 2
});
}
var ssoInit = function (emCode) {
if (emCode === undefined) {
emCode = '';
}
return new Promise(function (rs, rj) {
var params = getFrameParams();
if (params.emobile_ec_id) window.localStorage['emobile_ec_id'] = params.emobile_ec_id;
if (params.mobiletoken) window.localStorage['m_access_token'] = params.mobiletoken;
if (params.nossoinit == 1) {
rs();
return;
}
var ua = window.navigator.userAgent;
// var loadJem = (/.*E-Mobile7.*/.test(ua)
// || /.*E-Mobile\/7.*/.test(ua)
// || /.*e-mobile\/7.*/.test(ua)
// || /.*MicroMessenger.*/.test(ua)
// || /.*DingTalk.*/.test(ua)
// || /Qing\/.*;(iOS|iPhone|Android).*/.test(ua)
// || /.*e-mobile-xp.*/.test(ua)
// || /.*HuaWei-AnyOffice.*/.test(ua)
// || /.*Lark.*/.test(ua)
// )
// window.localStorage.emobile_ec_id
var loadJem = false;
var fn = function () {
if (window.localStorage['em_auth_code'] && !params.em_auth_code) params.em_auth_code = window.localStorage['em_auth_code'];
if ((params.em_auth_code && params.em_auth_code != 'undefined') || loadJem) {
// if (parseInt(window.localStorage['em_retry_time']) >= 3) {
// window.localStorage['em_retry_time'] = 0;
// rj();
// } else {
// if (window.localStorage['em_retry_time']) {
// window.localStorage['em_retry_time'] = parseInt(window.localStorage['em_retry_time'] + 1);
// } else {
// window.localStorage['em_retry_time'] = 0;
// }
// }
try {
var tempParams = params;
var code = emCode || params.em_auth_code
// tempParams = Object.assign(tempParams, { em_auth_code: code });
tempParams.em_auth_code = code
var codeList = window.emCodeList || [];
if (codeList.some(function (codeUsed) { code == codeUsed })) {
tempParams = {};
}
tempParams.em_auth_userid = params.em_auth_userid
tempParams.timeZoneOffset = new Date().getTimezoneOffset();
codeList.push(code);
window.emCodeList = codeList;
callApi({
url: '/api/ec/dev/app/test',
method: 'GET',
params: tempParams,
type: 'json',
}).then(function (res) {
window.wm_test_sso_api_end = new Date().getTime();
window.localStorage['em_retry_time'] = 0;
window.em_url_open = res.em_url_open;
if (res.languageType) {
window.localStorage['languageidweaver'] = res.languageType
}
if (res.status === true || res.status === '1') {
if (!res.em_url_open) {
rs();
return;
}
if (res.mobileTokenName) {
window.localStorage['mobileTokenName'] = res.mobileTokenName
}
if (res.m_refresh_token) {
window.localStorage['m_refresh_token'] = res.m_refresh_token
}
if (res.m_access_token) {
window.localStorage['m_access_token'] = res.m_access_token
}
rs();
// var emUrl = res.em_url_open + '/open/js/jem.js?v=' + new Date().getTime();
// if (res.jemUrl) {
// emUrl = res.jemUrl
// }
// try {
// loadEmFile(res, rs, rj, emUrl);
// } catch (error) {
// rj({ msg: 'js 加载异常:' + res.em_url_open })
// }
} else {
rj({ msg: '认证失败,em地址:' + res.em_url, res: res });
}
}.bind(this)).catch(function (error) {
if ((
/.*MicroMessenger.*/.test(ua)
|| /.*DingTalk.*/.test(ua)
|| /.*Lark.*/.test(ua)
) && window.em_url_open
&& window.localStorage.emobile_ec_id
) {
window.location.href = window.em_url_open + '/wxapi/wxclienturl/redirect?em_sys_id=' + window.localStorage.emobile_ec_id + '&redirect_url=' + encodeURIComponent(location.href)
rs();
return;
}
if (window.em && window.em.checkJsApi("getEmAuthCode")) {
window.em.getEmAuthCode({
sysId: window.localStorage.emobile_ec_id, // 集成系统ID
success: function (emres) {
// 如:{"em_auth_code":"abc123","errMsg":"getEmAuthCode:ok"}
if (emres.em_auth_code) {
ssoInit(emres.em_auth_code)
} else {
alert('重新获取em_auth_code失败');
}
},
error: function (error) {
alert('重新获取em_auth_code失败: ' + JSON.stringify(error));
}
});
} else {
reinitEm()
rj(error);
}
}.bind(this));
} catch (error) {
window.localStorage['emDebug'] == '1' && alert(error);
}
}
else {
try {
checkCustomSSO(rs, rj)
} catch (error) {
rj({ msg: '自定义配置 加载异常' + error })
}
}
}
if (emCode) {
fn()
} else {
if (!window.localStorage['em_auth_code'] && window.getEmAuthCode) {
window.getEmAuthCode.then(fn);
} else {
fn();
}
// if (window.em && window.em.checkJsApi("getEmAuthCode") && (window.localStorage.emobile_ec_id || params.emobile_ec_id)) {
// window.em.getEmAuthCode({
// sysId: window.localStorage.emobile_ec_id || params.emobile_ec_id, // 集成系统ID
// success: function (emres) {
// // 如:{"em_auth_code":"abc123","errMsg":"getEmAuthCode:ok"}
// if (emres.em_auth_code) {
// params.em_auth_code = emres.em_auth_code;
// fn();
// } else {
// alert('获取em_auth_code失败');
// }
// },
// error: function (error) {
// alert('获取em_auth_code失败: ' + JSON.stringify(error));
// }
// });
// }
}
}.bind(this));
}.bind(this);
var checkCustomSSO = function (rs, rj) {
// 移动端单点登录自定义配置
if (window.e9ssoMobileConfig && window.e9ssoMobileConfig.inUse) {
// 移动端单点登录自定义初始化方法
window.e9ssoMobileConfig.customInit().then(function () {
if (!window.ssoCustomChecked && !window.localStorage.ssoCustomChecked) {
window.ssoCustomChecked = true;
if (window.customSsoConfig) {
// 移动端自定义单点登录接口
if (window.customSsoConfig.inUseMobile) {
var params = getFrameParams();
var checkSessionParams = [];
if (window.customSsoConfig.sessionCheckApiParamsMobile) {
var sessionParams = window.customSsoConfig.sessionCheckApiParamsMobile.split(',');
sessionParams.forEach(function (element) {
checkSessionParams[element] = params[element];
}.bind(this));
}
callApi({
url: window.customSsoConfig.sessionCheckApiMobile,
method: window.customSsoConfig.sessionCheckApiMobileType,
params: checkSessionParams,
type: 'json',
}).then(function (res) {
if ((res.status === '1' || res.status === true) && !res.hasSession) {
var service = escape(window.location.href);
var paramsMark = '?';
if (window.customSsoConfig.serverLoginUrlMobile.indexOf('?') !== -1) {
paramsMark = '&';
}
window.location.href = window.customSsoConfig.serverLoginUrlMobile + paramsMark + 'service=' + service;
rs();
}
else {
rj('sessionCheckApiMobile');
}
}.bind(this));
}
else {
rs();
}
}
else {
rs();
}
}
else {
if (window.localStorage.ssoCustomChecked) {
window.localStorage.ssoCustomChecked = false;
}
rs();
}
}.bind(this)).catch(function (res) { rj('customInit' + JSON.stringify(res)); }.bind(this));
}
else {
if (!window.ssoCustomChecked && !window.localStorage.ssoCustomChecked) {
window.ssoCustomChecked = true;
if (window.customSsoConfig) {
// 移动端自定义单点登录接口
if (window.customSsoConfig.inUseMobile) {
var params = getFrameParams();
var checkSessionParams = [];
if (window.customSsoConfig.sessionCheckApiParamsMobile) {
var sessionParams = window.customSsoConfig.sessionCheckApiParamsMobile.split(',');
sessionParams.forEach(function (element) {
checkSessionParams[element] = params[element];
}.bind(this));
}
callApi({
url: window.customSsoConfig.sessionCheckApiMobile,
method: window.customSsoConfig.sessionCheckApiMobileType,
params: checkSessionParams,
type: 'json',
}).then(function (res) {
if ((res.status === '1' || res.status === true) && !res.hasSession) {
var service = escape(window.location.href);
var paramsMark = '?';
if (window.customSsoConfig.serverLoginUrlMobile.indexOf('?') !== -1) {
paramsMark = '&';
}
window.location.href = window.customSsoConfig.serverLoginUrlMobile + paramsMark + 'service=' + service;
rs();
}
else {
rj('sessionCheckApiMobile');
}
}.bind(this));
}
else {
rs();
}
}
else {
rs();
}
}
else {
if (window.localStorage.ssoCustomChecked) {
window.localStorage.ssoCustomChecked = false;
}
rs();
}
}
}.bind(this);
var getFrameParams = function (urlStr) {
var url = urlStr || window.location.href;
var params = {};
var urlParams = [];
if (url.indexOf('#') !== -1) {
var paramsArr = url.split('#');
paramsArr.forEach(function (item) {
if (item.indexOf('?') !== -1) {
var urlItem = item.slice(item.indexOf('?') + 1).split('&');
urlItem.forEach(function (element) {
var datas = element.split('=');
params[datas[0]] = datas[1];
}.bind(this));
}
}.bind(this))
} else {
urlParams = url.slice(url.indexOf('?') + 1).split('&');
urlParams.forEach(function (element) {
var datas = element.split('=');
params[datas[0]] = datas[1];
}.bind(this));
}
return params;
}.bind(this);
var initEM = function (res, rs, rj, isReload, emUrl) {
try {
var loadEm = function (retryTimes) {
var retryDelay = 100;
if (retryTimes === 0) {
retryDelay = 0;
}
setTimeout(function () {
// init emobile config
if (window.em) {
window.em.config({
corpId: res.em_corpid,
appId: '',
});
window.localStorage.emobile_ec_id = res.ec_id;
rs(res);
}
else {
if (retryTimes < 2) {
loadEm(retryTimes + 1);
}
else {
if (isReload) {
// loadEm(0);
rj({ msg: 'em对象不存在,重新加载无效' });
} else {
reloadEm(res, rs, rj, emUrl);
}
}
}
}.bind(this), retryDelay);
}.bind(this);
loadEm(0);
} catch (error) {
window.localStorage['emDebug'] == '1' && alert(error);
}
}.bind(this);
var reinitEm = function () {
callApi({
url: '/api/ec/dev/app/test',
method: 'GET',
params: {},
type: 'json',
}).then(function (res) {
if (res.languageType) {
window.localStorage['languageidweaver'] = res.languageType
}
if (res.status === true || res.status === '1') {
if (!res.em_url_open) {
return;
}
var emUrl = res.em_url_open + '/open/js/jem.js?v=' + new Date().getTime();
var rj = function (params) {
alert(JSON.stringify(params))
}.bind(this)
var rs = function () {
if ((
/.*MicroMessenger.*/.test(ua)
|| /.*DingTalk.*/.test(ua)
|| /.*Lark.*/.test(ua)
) && window.em_url_open
&& window.localStorage.emobile_ec_id
) {
window.location.href = window.em_url_open + '/wxapi/wxclienturl/redirect?em_sys_id=' + window.localStorage.emobile_ec_id + '&redirect_url=' + encodeURIComponent(location.href)
return;
}
window.em.getEmAuthCode({
sysId: window.localStorage.emobile_ec_id, // 集成系统ID
success: function (emres) {
// 如:{"em_auth_code":"abc123","errMsg":"getEmAuthCode:ok"}
if (emres.em_auth_code) {
ssoInit(emres.em_auth_code).then(function () {
window.location.reload();
})
} else {
alert('重新获取em_auth_code失败');
}
},
error: function (error) {
alert('重新获取em_auth_code失败: ' + JSON.stringify(error));
}
});
}
// try {
// loadEmFile(res, rs, rj, emUrl);
// } catch (error) {
// rj({ msg: 'js 加载异常' + error })
// }
}
else {
// alert({ msg: '重认证失败,' + res.errmsg, res: res });
alert('重认证失败:' + res.em_url)
}
}.bind(this));
}.bind(this)
var reloadEm = function (res, rs, rj, emUrl) {
loadjs((emUrl + 'reload'), 'em', {
success: function () { window.wm_test_sso_em_loaded_end = new Date().getTime(); initEM(res, rs, rj, true, emUrl); }.bind(this),
error: function (res) {
rj({ msg: (('jem.js 重载失败:' + res.em_url_open) || 'jem.js 重载失败,emUrl:' + emUrl) });
}.bind(this)
})
}
window.em_ssoInit = ssoInit;
window.sso_callApi = callApi;
window.sso_getJSONObj = getJSONObj;
try {
var loadDevFile = function () {
var defaultDevFiles = [
"/cloudstore/config/devStatic/devModuleCustomMobile.js?v=" + new Date().getTime(),
"css!/cloudstore/config/devStatic/devModuleStyleMobile.css?v=" + new Date().getTime()
];
if (window.ecDevFileConfig && window.ecDevFileConfig.mobile) {
if (window.ecDevFileConfig.mobile.global) {
defaultDevFiles = window.ecDevFileConfig.mobile.global;
}
if (window.ecDevFileConfig.mobile.moduleConfig && window.ecDevFileConfig.mobile.moduleConfig.length) {
var moduleConfigList = window.ecDevFileConfig.mobile.moduleConfig
for (var index = 0; index < moduleConfigList.length; index++) {
var element = moduleConfigList[index];
if (window.location.href.search(element.hrefRegex) > 0) {
defaultDevFiles = defaultDevFiles.concat(element.files);
}
}
}
}
loadjs.isDefined('customDevFiles') ? '' : loadjs(defaultDevFiles, 'customDevFiles');
}
loadDevFile();
} catch (error) {
window.localStorage['emDebug'] == '1' && alert('customDevFiles error')
console && console.log(error)
}
})()