成功登录后登录页面未重定向到主页

Posted

技术标签:

【中文标题】成功登录后登录页面未重定向到主页【英文标题】:Login page not redirecting to home page on successful login 【发布时间】:2022-01-17 01:46:30 【问题描述】:

我正在使用 aws amplify 进行身份验证。 单击登录时 Auth.currentAuthenticatedUser() 返回 true 但页面重定向到主页,单击刷新时重定向到主页并且工作正常。

这是代码

Home.js

function Home(props) 
  const [auth, setAuth] = useState();

  async function isAuthenticated() 
    try 
      let res = await Auth.currentAuthenticatedUser();
      console.log(res);
      setAuth(true);
     catch 
      setAuth(false);
      console.log("error");
    
  
  useEffect(() => 
    isAuthenticated();
  , [auth]);

  console.log(auth);
  return false ? (
    <div className="c-app c-default-layout">
      <Sidebar />
      <div className="c-wrapper">
        <Header ...props />
        <div className="c-body">
          <Content />
        </div>
        <Footer />
      </div>
    </div>
  ) : (
    <Redirect to="/login" />
  );

【问题讨论】:

【参考方案1】:

首先,在返回条件中总是为假,所以会一直重定向到'/login'页面。

考虑到您在返回条件中有auth 而不是false,第一次渲染时 auth 的值将是未定义的,因此它会再次重定向到“/login”页面。

【讨论】:

以上是关于成功登录后登录页面未重定向到主页的主要内容,如果未能解决你的问题,请参考以下文章

Grails Spring Security登录失败未重定向到登录视图

登录页面未重定向到另一页面

Firebase 身份验证登录但成功登录后重定向到主页失败(服务器响应 200)

使用 facebook 登录网站后重定向页面

reactjs登录成功后如何打开主页?

IIS7.5下的Asp Net Mvc 4应用程序未重定向到登录页面[重复]