【发布时间】:2021-04-07 07:20:24
【问题描述】:
在下面的代码中:
如果从ClientSide发送的用户auth data在backend中匹配,backend发送与用户的响应strong>id,前面
setIsAuth设置true然后Layout组件先发送<Switch>大小写,客户端可以访问任何受保护的组件。否则,setIsAuth设置false然后Layout组件发送第二个<Switch>案例,其中仅包含<Signup />和<Login />路由。它是安全的身份验证方式吗?
let [isAuth, setIsAuth]=useState( false )
return (
<>
{
isAuth ? <Switch>
<Route exact path={"/"} component={ Home } />
<Route exact path={"/shopping-card"} component={ShoppingCard} />
<Route exact path={"/order-success"} component={ OrderSuccess } />
<Route exact path={"/orders"} component={ Orders } />
<Route exact path={"/products"} component={ Products } />
<Redirect to={"/user/login"} />
</Switch> : <Switch>
<Route exact path={"/user/signup"} component={ Signup } />
<Route exact path={"/user/login"} component={ Login } />
<Redirect to={"/user/login"} />
</Switch>
}
</>
)
}
export default Layout
【问题讨论】:
标签: javascript node.js reactjs react-router-dom