Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 身份验证和重复使用/路由器问题_Javascript_Reactjs_Session_Redux_React Router - Fatal编程技术网

Javascript 身份验证和重复使用/路由器问题

Javascript 身份验证和重复使用/路由器问题,javascript,reactjs,session,redux,react-router,Javascript,Reactjs,Session,Redux,React Router,1.如何访问Reduxdispatch函数和路由器history对象 export const loginHelper = ({ userInfo }) => { dispatch(loginUser(userInfo)); // from where can i get dispatch ?? localStorage.setItem('userInfo', JSON.stringify(userInfo)); history.push('/foo/search'

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
我可以在哪里存储我的用户信息数据,因此当我关闭浏览器时,它也会被清除

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

问题归根结底是跨站点脚本攻击(XSS)

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

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