fix login redirects
This commit is contained in:
parent
eb05627a98
commit
936a38a7a8
3 changed files with 15 additions and 8 deletions
|
|
@ -21,7 +21,11 @@ api.interceptors.response.use(
|
||||||
(error) => {
|
(error) => {
|
||||||
if (error.response && error.response.status === 401) {
|
if (error.response && error.response.status === 401) {
|
||||||
localStorage.removeItem('token');
|
localStorage.removeItem('token');
|
||||||
window.location.href = '/login';
|
if(error.response.request.responseURL.indexOf('user/login') === -1) {
|
||||||
|
window.location.href = '/login';
|
||||||
|
} else {
|
||||||
|
return Promise.reject(error);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return Promise.reject(error);
|
return Promise.reject(error);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
BIN
src/assets/logo.png
Normal file
BIN
src/assets/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
|
|
@ -9,7 +9,7 @@ import {useNavigate} from "react-router-dom";
|
||||||
export function LoginPage() {
|
export function LoginPage() {
|
||||||
const [login,setLogin] = useState('');
|
const [login,setLogin] = useState('');
|
||||||
const [password, setPassword] = useState('');
|
const [password, setPassword] = useState('');
|
||||||
const [showWrongUserNameAndPasswordError, setShowWrongUserNameAndPasswordError] = useState(false);
|
const [errorMessage, setErrorMessage] = useState('');
|
||||||
const [registerResultMessage, setRegisterResultMessage] = useState('');
|
const [registerResultMessage, setRegisterResultMessage] = useState('');
|
||||||
const auth = useAuth();
|
const auth = useAuth();
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
|
|
@ -21,11 +21,14 @@ export function LoginPage() {
|
||||||
password: password,
|
password: password,
|
||||||
}).then((response) => {
|
}).then((response) => {
|
||||||
auth.login(response.data.token);
|
auth.login(response.data.token);
|
||||||
setShowWrongUserNameAndPasswordError(false);
|
setErrorMessage('');
|
||||||
navigate('/');
|
navigate('/');
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
|
console.log(err);
|
||||||
if(err.status === 401) {
|
if(err.status === 401) {
|
||||||
setShowWrongUserNameAndPasswordError(true);
|
setErrorMessage('Wrong username or password');
|
||||||
|
} else {
|
||||||
|
setErrorMessage('Something went wrong');
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
@ -37,10 +40,10 @@ export function LoginPage() {
|
||||||
}).then((response) => {
|
}).then((response) => {
|
||||||
if(response.status === 201) {
|
if(response.status === 201) {
|
||||||
setRegisterResultMessage('User registered successfully. You can now log in.');
|
setRegisterResultMessage('User registered successfully. You can now log in.');
|
||||||
setShowWrongUserNameAndPasswordError(false);
|
setErrorMessage('');
|
||||||
}
|
}
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
setRegisterResultMessage('Something went wrong');
|
setErrorMessage('Something went wrong');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -55,9 +58,9 @@ export function LoginPage() {
|
||||||
</div>
|
</div>
|
||||||
<div className={"flex flex-col items-center"}>
|
<div className={"flex flex-col items-center"}>
|
||||||
<div className={"lg:w-80 sm:w-3/4"}>
|
<div className={"lg:w-80 sm:w-3/4"}>
|
||||||
{ showWrongUserNameAndPasswordError && (
|
{ errorMessage && (
|
||||||
<div className={"p-4 rounded bg-red-200 text-black"}>
|
<div className={"p-4 rounded bg-red-200 text-black"}>
|
||||||
Wrong username or password
|
{ errorMessage }
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{ registerResultMessage && (
|
{ registerResultMessage && (
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue