Обновление страницы при перенаправлении маршрута с аутентификацией по токену на страницу 404 в ReactJavascript

Форум по Javascript
Anonymous
Обновление страницы при перенаправлении маршрута с аутентификацией по токену на страницу 404 в React

Сообщение Anonymous »

У меня есть простое приложение, в котором есть страница входа в систему, и после отправки формы оно отправляет запрос на серверную часть, которая возвращает токен при успешной аутентификации, который затем перенаправляется на внутреннюю страницу панели управления. Существует также еще одна страница, называемая настройками, и еще одна страница NotFound (404).
После входа в систему, когда я нахожусь на странице панели управления или странице настроек, если я обновлюсь, мне потребуется на страницу 404, тогда как она должна оставаться на той странице, на которой я нахожусь. Кто-нибудь знает, в чем может быть проблема?
Вот код:
App.js

const App = () => {
const [isAuthenticated, setIsAuthenticated] = useState(false);

const handleLogin = (token) => {
localStorage.setItem('token', token);

setIsAuthenticated(true);
};

useEffect(() => {
const token = localStorage.getItem('token');

setIsAuthenticated(!!token);
}, []);

return (

{
isAuthenticated ? (





) : (




)
}

);
}

Login.js

const Login = ({ onLogin }) => {
const [username, setUsername] = useState('');
const [password, setPassword] = useState('');
const navigate = useNavigate();

const handleSubmit = async (e) => {
e.preventDefault();

const response = await fetch('/api/login', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ username, password }),
});

if (response.ok) {
const result = await response.json();

if (result.success) {
localStorage.setItem('token', result.token);

onLogin(result.token);
navigate('/dashboard');
}
}
};

return (


LOGIN


setUsername(e.target.value)}
required
/>

setPassword(e.target.value)}
required
/>


Login




);
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... e-in-react

Вернуться в «Javascript»