问题:免登用cookie或localStorage本地存储后,二次打开不需要调用免登减少系统开销,速度会快很多,如果一个设备退出后,又更换其它钉钉帐号登录,在微应用中再次取cookie值为前一次的登录帐号。
是否有钉钉登录接口事件,这样在钉钉更换帐号登时可以清除以前的帐号cookie,减少系统开销。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在钉钉的登录体系中,确实存在机制来处理您提到的场景,以确保用户身份的一致性和安全性。虽然直接提及清除cookie或localStorage的具体接口事件可能不够详细,但根据钉钉的单点登录(SSO)和免登功能的设计原则,可以间接实现您所需的安全控制逻辑。以下是如何利用钉钉提供的机制来优化这一流程的建议:
利用钉钉SDK或API监听登录状态变化:
实施策略:
dd.getAuthCode
或dd.runtime.permission.requestAuthCode
),并结合dd.login
等方法来获取最新的用户身份信息。代码示例思路(非具体代码,仅为逻辑指导):
// 假设使用钉钉JSAPI
dd.ready(function() {
// 监听登录态变化
dd.runtime.onLoginSuccess(function(result) {
// 清理旧的cookie或localStorage
clearPreviousUserStorage();
// 更新存储为当前登录用户信息
saveCurrentUserToStorage(result.userInfo);
});
// 检查当前登录态,如果已登录则触发登录成功逻辑
dd.runtime.permission.requestAuthCode({
corpId: "YOUR_CORP_ID", // 替换为实际的企业ID
onSuccess: function(info) {
// 处理登录成功逻辑,包括存储用户信息
},
onFail : function(err) {
// 处理登录失败情况
}
});
});
注意事项:
综上所述,虽然没有直接的“清除cookie事件”,但通过合理利用钉钉SDK提供的登录态监听和管理能力,可以有效应对用户切换账号时的本地存储问题,确保应用内用户身份的准确无误。