【问题标题】:Issues with authentication and Redux/Router身份验证和 Redux/Router 的问题
【发布时间】:2019-10-09 05:55:57
【问题描述】:

1. 如何在如下函数中访问 Redux dispatch 函数和路由 history 对象

export const loginHelper = ({ userInfo }) => {
    dispatch(loginUser(userInfo)); // from where can i get dispatch ??
    localStorage.setItem('userInfo', JSON.stringify(userInfo));
    history.push('/foo/search'); // from where can i get history ??
}

2. 而不是localStorage 我在哪里可以存储我的用户信息数据,所以当我关闭浏览器时它也会被清除

【问题讨论】:

    标签: javascript reactjs session redux react-router


    【解决方案1】:

    停止使用本地存储 事情是这样的:关于本地存储的大部分坏事并不是那么重要。你仍然可以使用它,但你只会有一个稍微慢一点的应用程序和轻微的开发人员烦恼。 本地存储并非旨在用作浏览器中的安全存储机制。它被设计成一个简单的字符串键/值存储,开发人员可以使用它来构建稍微复杂的单页应用程序。就是这样。

    问题真正归结为跨站点脚本攻击 (XSS)。

    如果攻击者可以在您的网站上运行 JavaScript,他们就可以检索您存储在本地存储中的所有数据并将其发送到他们自己的域。这意味着您在本地存储中的任何敏感信息(例如用户的会话数据)都可能受到损害。

    要回答您的问题,请尝试发送 userInfo 并通过减速器将其保存在您的商店中。然后使用它来查询 userInfo 数据。

    【讨论】:

      猜你喜欢
      • 2021-08-11
      • 2020-09-03
      • 1970-01-01
      • 2014-08-30
      • 2013-05-16
      • 2018-07-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多