mxstbr / login-flow

:key: A login/register flow built with React&Redux
https://loginflow.mxstbr.com
MIT License
1.6k stars 215 forks source link

Indirect logout case #29

Open hegdeashwin opened 7 years ago

hegdeashwin commented 7 years ago

Once I logged in I am able to see dashboard and if i change the route to /login it redirects me to dashboard as you are already logged in and your token is present in cookie.

Now, instead of hitting logout say support I delete the token cookie or clean local storage and then after if I refresh the browser it should redirect me to login instead of dashboard.

Well, I am trying to do some thing as below, in my router file where i have defined my routes:

...
function shouldRedirectToLogin(nextState, replace) {
  console.log('nextState: ', nextState);

  if (!auth.isLoggedIn()) {
    replace({
      pathname: '/login',
      state: { nextPathname: nextState.location.pathname }
    })
  }
}
...

I am getting bellow error, I am using React, Redux and React-Router.

browser.js:49 Warning: You cannot use state without a queryKey it will be dropped
hegdeashwin commented 7 years ago

Now, instead of hitting logout say support I delete the token cookie or clean local storage and then after if I refresh the browser it should redirect me to login instead of dashboard.

I was able to fix this issue by adding res.header('Cache-Control', 'no-cache, private, no-store, must-revalidate, max-stale=0, post-check=0, pre-check=0'); in my logout response header.

browser.js:49 Warning: You cannot use state without a queryKey it will be dropped This is still an issue.