Refresh token when token has expired

This commit is contained in:
Charles Bochet
2023-04-21 17:30:41 +02:00
parent 049664b98e
commit d3e9709e08
11 changed files with 174 additions and 133 deletions

View File

@ -1,18 +1,26 @@
import { useSearchParams, useNavigate } from 'react-router-dom';
import { useRefreshToken } from '../../hooks/auth/useRefreshToken';
import { useEffect } from 'react';
import { useEffect, useState } from 'react';
import { refreshAccessToken } from '../../services/AuthService';
function Callback() {
const [searchParams] = useSearchParams();
const [isLoading, setIsLoading] = useState(true);
const refreshToken = searchParams.get('refreshToken');
localStorage.setItem('refreshToken', refreshToken || '');
const { loading } = useRefreshToken();
const navigate = useNavigate();
useEffect(() => {
if (!loading) {
async function getAccessToken() {
await refreshAccessToken();
setIsLoading(false);
navigate('/');
}
}, [navigate, loading]);
if (isLoading) {
getAccessToken();
}
}, [isLoading, navigate]);
return <></>;
}