mirror of
https://github.com/stonith404/pingvin-share.git
synced 2025-02-19 01:55:48 -05:00
fix: reduce refresh access token calls
This commit is contained in:
parent
4dae7e250a
commit
1aa3d8e5e8
2 changed files with 9 additions and 2 deletions
|
@ -50,7 +50,12 @@ function App({ Component, pageProps }: AppProps) {
|
||||||
}, [router.pathname]);
|
}, [router.pathname]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setInterval(async () => await authService.refreshAccessToken(), 30 * 1000);
|
const interval = setInterval(
|
||||||
|
async () => await authService.refreshAccessToken(),
|
||||||
|
2 * 60 * 1000, // 2 minutes
|
||||||
|
);
|
||||||
|
|
||||||
|
return () => clearInterval(interval);
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|
|
@ -36,8 +36,10 @@ const signOut = async () => {
|
||||||
const refreshAccessToken = async () => {
|
const refreshAccessToken = async () => {
|
||||||
try {
|
try {
|
||||||
const accessToken = getCookie("access_token") as string;
|
const accessToken = getCookie("access_token") as string;
|
||||||
|
|
||||||
|
// If the access token expires in less than 2 minutes refresh it
|
||||||
if (
|
if (
|
||||||
!accessToken ||
|
accessToken &&
|
||||||
(jose.decodeJwt(accessToken).exp ?? 0) * 1000 < Date.now() + 2 * 60 * 1000
|
(jose.decodeJwt(accessToken).exp ?? 0) * 1000 < Date.now() + 2 * 60 * 1000
|
||||||
) {
|
) {
|
||||||
await api.post("/auth/token");
|
await api.post("/auth/token");
|
||||||
|
|
Loading…
Add table
Reference in a new issue