caixianzhi pc接口修改完成
This commit is contained in:
+65
-3
@@ -2,6 +2,7 @@ const AuthPageUtil = {
|
||||
smsTimers: {},
|
||||
slideUuid: '',
|
||||
slideX: 0,
|
||||
slideToken: '',
|
||||
|
||||
isPhone(phone) {
|
||||
return /^1[3-9]\d{9}$/.test(String(phone || '').trim());
|
||||
@@ -15,7 +16,7 @@ const AuthPageUtil = {
|
||||
loadVerifyType() {
|
||||
return ApiClient.get(ApiClient.API.authVerifyConfig, {}, { publicRequest: true })
|
||||
.then((res) => {
|
||||
const data = (res && res.data) || {};
|
||||
const data = (res && res.data) || res || {};
|
||||
const yes = (value) =>
|
||||
value === true || value === 1 || value === '1' || String(value).toLowerCase() === 'true';
|
||||
if (
|
||||
@@ -32,12 +33,13 @@ const AuthPageUtil = {
|
||||
.catch(() => 'captcha');
|
||||
},
|
||||
|
||||
sendSmsCode(options) {
|
||||
buildSmsParams(options = {}) {
|
||||
const params = {
|
||||
phoneNumber: options.phoneNumber,
|
||||
};
|
||||
if (options.verifyType === 'slide') {
|
||||
params.verifyType = 'slide';
|
||||
params.slideToken = options.slideToken || this.slideToken;
|
||||
params.slideUuid = options.slideUuid || this.slideUuid;
|
||||
params.slideX = options.slideX || this.slideX;
|
||||
}
|
||||
@@ -46,7 +48,23 @@ const AuthPageUtil = {
|
||||
params.code = options.code || '';
|
||||
params.uuid = options.uuid || '';
|
||||
}
|
||||
return ApiClient.get(ApiClient.API.authSmsCode, params, { publicRequest: true });
|
||||
return params;
|
||||
},
|
||||
|
||||
sendSmsCode(options) {
|
||||
return ApiClient.get(ApiClient.API.authSmsCode, this.buildSmsParams(options), {
|
||||
publicRequest: true,
|
||||
});
|
||||
},
|
||||
|
||||
sendForgotPasswordSmsCode(options) {
|
||||
return ApiClient.get(ApiClient.API.authForgotPasswordSmsCode, this.buildSmsParams(options), {
|
||||
publicRequest: true,
|
||||
});
|
||||
},
|
||||
|
||||
getImageCaptcha() {
|
||||
return ApiClient.get(ApiClient.API.authCode, {}, { publicRequest: true });
|
||||
},
|
||||
|
||||
installSlideCaptchaTenantHeader() {
|
||||
@@ -138,6 +156,50 @@ const AuthPageUtil = {
|
||||
});
|
||||
return window.__slideCaptchaLoading;
|
||||
},
|
||||
|
||||
openSlideCaptcha(options = {}) {
|
||||
this.installSlideCaptchaTenantHeader();
|
||||
|
||||
this.loadSlideCaptchaScript()
|
||||
.then((SlideCaptcha) => {
|
||||
SlideCaptcha.open({
|
||||
title: options.title || '安全验证',
|
||||
subtitle: options.subtitle || '拖动滑块完成验证',
|
||||
apiBase: ApiClient.baseUrl || '',
|
||||
tenantId: ApiClient.tenantId || '000000',
|
||||
headers: ApiClient.publicHeaders(),
|
||||
onSuccess: (result) => {
|
||||
const data = result || {};
|
||||
const nested = data.data || {};
|
||||
this.slideToken =
|
||||
data.slideToken || data.token || data.verifyToken ||
|
||||
nested.slideToken || nested.token || nested.verifyToken || '';
|
||||
this.slideUuid = data.slideUuid || data.uuid || nested.slideUuid || nested.uuid || '';
|
||||
this.slideX = Number(data.slideX || data.x || nested.slideX || nested.x || 0) || 0;
|
||||
|
||||
if (!this.slideToken && !this.slideUuid) {
|
||||
if (typeof options.onError === 'function') {
|
||||
options.onError(new Error('滑动验证未返回凭证,请重试'));
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (typeof options.onSuccess === 'function') {
|
||||
options.onSuccess({
|
||||
slideToken: this.slideToken,
|
||||
slideUuid: this.slideUuid,
|
||||
slideX: this.slideX,
|
||||
});
|
||||
}
|
||||
},
|
||||
onCancel: options.onCancel,
|
||||
onError: options.onError,
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
if (typeof options.onError === 'function') options.onError(error);
|
||||
});
|
||||
},
|
||||
};
|
||||
|
||||
if (typeof window !== 'undefined') {
|
||||
|
||||
Reference in New Issue
Block a user