APICloud技巧 | 用户登录与登出的实现方法
使用APICloud平台也有一段时间了,学到了很多东西,挺受益的,所以决定把我遇到过的问题及其解决方法说一说,希望后来者可以更轻松。如有谬误,欢迎指正。谢谢!
APICloud中用户登录与登出的实现方法
登录
在登录界面登录成功后,广播登录成功事件并设置登录状态。登录成功后需要执行相关命令的界面(如移除登录相关按钮、显示登录用户可见内容、获取当前登录用户资料)需设置登录监听,以便登录成功后作出反馈。
//登录界面
//api.sendEvent广播登录成功事件
api.sendEvent({
name: 'loginSuccess'
});
//api.setPrefs设置登录成功状态
api.setPrefs({
key: 'loginStatus',
value: 'loginSuccess'
});
//修改界面
//api.addEventListener监听登录成功事件(需执行才可生效)
api.addEventListener({
name: 'loginSuccess'
}, function(ret, err){
if( ret ){
//执行登录成功相关指令
}
});
复制代码
判断登录状态
判断登录状态可用于决定是否打开登录界面。
//api.getPrefs获取当前登录状态
api.getPrefs({
key: 'loginStatus'
}, function(ret, err) {
//当偏好设置尚未设置或者曾设置后被移除后,返回值(ret.value)均为空。
var val = ret.value;
if (val && val != "") {
//已登录
} else {
//未登录
}
});
复制代码
登出
在登出界面登出成功后,广播登出成功事件并移除登录状态。登出成功后需要执行相关命令的界面(如显示登录相关按钮、移除登录用户可见内容、清空登出用户数据及缓存)需设置登出监听,以便登出成功后作出反馈。
//登出界面
//api.sendEvent广播登出成功事件
api.sendEvent({
name: 'logoutSuccess'
});
//api.removePrefs移除登录状态
api.removePrefs({
key: 'loginStatus'
});
//修改界面
//api.addEventListener监听登出成功事件(需执行才可生效)
api.addEventListener({
name: 'logoutSuccess'
}, function(ret, err){
if( ret ){
//执行登出成功相关指令
}
});
复制代码
文 : 无心戈
转自:APICloud官方论坛 . 分享区