登录页可用 API
Enhancer 全局对象
UA 设备探测。
【例】
Enhancer.UA.isDesktop; // 判断当前是否是 PC 桌面。
Enhancer.UA.isMobile; // 判断当前是否是移动端。
Enhancer.UA.isSmallScreen; // 判断当前是否是小屏幕。
getBaseUrl() 获取当前应用的基础 URL。
- @return url {String} 等同于设置在【全局配置-系统-外部访问地址】的值。若未配置则值为空字符串。
doLogin(userId, password, vericode, context, callback)
- @param userId {String} [必须] 用户登录账号ID
- @param password {String} [必须] 用户登录密码,若后端不需要校验密码,可传入 null,但必须参数占位。
- @param vericode {String} [必须] 用户输入的图形验证码,若后端不需要校验验证码,可传入 null,但必须占位。
- @param context {Object} [必须] 登录上下文参数,若后端不需要上下文,可传入 null,但必须占位。若有传入 key 值,后端自定义登录校验中可以通过 user.getVariable('LOGIN_CONTEXT_KEY') 来获取值。
- @param callback {Function}[必须]登录回调函数
- result {Object} 登录返回结果,格式如 {success: false, message: '账号已被锁定'}
【例】
var uid = $('.uid').val();
var pass = $('.pass').val();
var context = {method: 'weixin'}; // 注:后端可以通过 user.getVariable('LOGIN_CONTEXT_METHOD') 获得对应的值。
Enhancer.doLogin(uid, pass, null, context, function(result) {
if (result.success) {
Enhancer.enter();
return;
}
if (result.message === 'phone unbound') {
Enhancer.goStandalonePage(123); // => 去绑定手机
return;
}
alert('登录失败:' + result.message);
});
enter() 进入应用或系统。
openStandalonePage(pageId[, data]) 以独立模式打开页面,并传递参数。目标页面必须是公共页面。
- @param pageId {Number} [必须] 页面编号
- @param data {Object} [可选] 传递给页面的参数键值对,目标页面可以通过变量
@9-[KEYNAME]@
来取值。
goStandalonePage(pageId[, data]) 跳转到独立公共页面,并传递参数。目标页面必须是公共页面。
- @param pageId {Number} [必须] 页面编号
- @param data {Object} [可选] 传递给页面的参数键值对,目标页面可以通过变量
@9-[KEYNAME]@
来取值。
getCustomInterfaceUrl(interfaceName[, params]) 获取自定义接口 URL。必须是允许开放访问的自定义接口(角色置空)。
- @param interfaceName {String} - [必须] 用户指定的后台接口名
- @param params {Object} -[可选]参数键值对,附加在url后面,后台接口可以通过req.query['参数名'] 获取。如:
{name: '张三', id: '123'}
会附加上http://url?name=张三&id=123
。 - @return url {String}
【例】
var url = Enhancer.getCustomInterfaceUrl('my-interface-1', {name: '张三'});
$.ajax({
url: url,
type: 'POST', // 也可以是 'GET', 根据你的自定义接口的请求方式来
data: {
id: '123456', // POST
},
success: function(result) {
alert(JSON.stringify(result));
},
error: function(err) {
alert(err.responseText);
console.log(err);
}
});
/**
此时自定义接口可以通过 req.query.name 获得 url 附加参数 "张三";
通过 req.body.id 获得 POST 请求附加的 id 参数 "123456"
**/
getCaptchaUrl() 获取验证码图片地址。
- @return url {String}
【例】
var url = Enhancer.getCaptchaUrl();
$('img.captcha').attr('src', url);