i have made a custom hook to fetch data from api, but the token only valid for 5 second. so i made this hook the problem is when i call the hooks from my page it called many time and the refresh token already expired when i access the api i will check the response […]
Categories
react native fetch hook and refresh jwt token
- Post author By Full Stack
- Post date January 15, 2021
- No Comments on react native fetch hook and refresh jwt token
- Tags ' ini result'); if ( result.item3 !== 'refresh token gagal' && result.item3 !== 'refresh token sudah tidak berlaku' ) {, '<=jwt token'); let response = await fetch(URLREFRESHTOKEN, '<=refresh token'); console.log(refBody.jwttoken, 'masuk error usefetchbybutton'); console.log(err.message, "Content-Type": "application/json" }, { method: 'POST', {useEffect, {useState, }, }; }; export default FetchData; this is my dispatch refresh token const authContext = useMemo( () => ({ logIn: async (token, }; console.log('======refreshtokencalled=========='); console.log(refBody.refresh_tokenn, }); if (response.status == '401') { let refreshResult = await handleRefreshToken(url, }); let result = await response.json(); console.log(result, //item2 refresh token and item3 for error dispatchRefreshToken(token, authContext} = useContext(AuthContext); const [data, Authorization: `Bearer ${loginState.userToken}`, body: JSON.stringify(body), body: JSON.stringify(refBody), body) => { setIsLoading(true); let result; try { let response = await fetch(url, body); console.log(refreshResult); } else { result = await response.json(); console.log(result); consol, but the token only valid for 5 second. so i made this hook the problem is when i call the hooks from my page it called many time and the refr, callbackBody) => { const refBody = { client_id: loginState.ipAddress, callbackBody); } else { return null; } }; const getData = async (url, employee_id: loginState.userData.Pegawai_Id, err.code); setIsLoading(false); setMessage(err); } }; return { data: data, getData: getData, headers: { "Accept": "application/json", i have made a custom hook to fetch data from api, ipAddress: loginState.ipAddress, jwttoken: loginState.userToken, loading: Loading, message: message, redirect: 'follow', refresh_tokenn: loginState.refreshToken, refresh); await AsyncStorage.setItem('refreshToken', refresh); await AsyncStorage.setItem('token', refreshToken) => { console.log(token, setData] = useState([]); const [message, setIsLoading] = useState(false); const {dispatchRefreshToken} = authContext; const handleRefreshToken = async (callbackUrl, setMessage] = useState(''); const [loading, StyleSheet} from 'react-native'; import {AuthContext} from '../Auth/Context'; import AsyncStorage from '@react-native-community/async-storag, token); return getData(callbackUrl, URLREFRESHTOKEN} from '../Configs/GlobaUrl'; const FetchData = () => { const {loginState, useContext} from 'react'; import {View, userdata