首页 文章

redux安全性 - 状态重置后是否可以访问先前的状态?

提问于
浏览
1

我有一个应用程序,将用户特定数据保存在redux中,必须在用户注销时清除,即在同一浏览器选项卡中登录应用程序的下一个用户,应该无法访问数据 .

因此,应用程序使用redux中间件从API获取用户特定数据,然后该数据作为部分应用程序状态存储在redux中 . 当用户注销时,我会调度注销操作以清除状态:

const rootReducer = (state: {}, action: AnyAction) => {
    if( action.type === 'LOG_OUT')
        return {};
    return state;
}

一切似乎都很好,状态被重置为空状态,但我的问题是 - 当用户注销并且用户没有关闭浏览器选项卡时,有人可以使用开发工具或者在用户注销之前以某种方式查看状态吗? redux(不使用额外的持久性/历史中间件/增强器)是否可以在开箱即用的地方存储状态?或者它完全是在浏览器内存中,当注销状态重置时,之前的状态消失了,无法访问?

1 回答

  • 0

    如果没有对前一个状态对象的剩余引用,那么浏览器的JS引擎将垃圾收集旧状态 . 这也意味着浏览器的DevTools不会检查任何变量 .

    Redux核心本身不保留对先前状态对象的引用 .

相关问题