<p>React 애플리케이션에서 Spotify 토큰을 매시간 새로 고쳐야 합니다(Spotify 토큰은 1시간 동안 유효합니다). 다음 방법은 <strong>useEffect</strong> 후크와 <strong>setInteral</strong></p>
<pre class="brush:php;toolbar:false;">useEffect(() => {
const 간격 = setInterval(() => {
//API 로직 호출
}, 3600);
return() =>clearInterval(간격);
}, [사용자])</pre>
<p>그러나 앱을 닫았다가 다시 열면 (기존 토큰이 여전히 유효한 경우에도) 토큰을 가져오기 위해 다시 새로운 요청을 보냅니다. 그래서 남은 만료 시간에 따라 새 토큰을 얻기 위해 API 호출이 필요한 기능을 구현하려고 합니다. 이 기능을 구현하는 방법. </p>
<p>경과 시간 이후 남은 만료 시간을 계산하는 함수도 만들었습니다</p>
<pre class="brush:php;toolbar:false;">export const 계산RemainingExpirationTime = 만료 시간 =>
const currentTime = new Date().getTime();
const newExpirationTime = 새로운 Date(expirationTime).getTime()
const 잔여 시간 = newExpirationTime - 현재 시간
return 남은 시간; //밀리초 단위
};</pre>
<p>따라서 페이지가 다시 로드되면 남은 만료 시간을 계산한 다음 해당 시간을 기준으로 API를 호출하고 1시간마다 API를 호출하여 새 토큰을 받아야 합니다. </p>
<p><strong>다음 기능을 구현해야 합니다</strong></p>
<올>
<li>페이지가 새로고침되면 남은 시간을 계산하고, 남은 시간을 기준으로 API를 호출합니다</li>
매시간 API 호출
저장해야 합니다
过期时间
持久化到localStorage
或使用Redux-persist
으아악 으아악