ID 1171005 이고 파이썬에서 Rest API 를 이용해 메시지 api 를 사용중에 있습니다.
API 사용을 위한 code 요청 및 갱신에 관하여 문의 드립니다.
1 …/oauth/authorize 에서 나오는 authorization code 의 유효기간은 시간 인가요?
2. refresh_token 의 유효기간은 시간 인가요?
3. 최종으로 사용 하는 access_token 의 유효기간은 12시간이 맞을까요?
4. 3 에서 access_token 이 12시간이 지나 새로 발급을 받아야 할때. 맨처음 1번 부터(카카오로그인 부터) 새로 진행을 하여야 하나요? 혹은 이전 1번에서 발급 받은 authorization code를 저장해 두었다가 2번부터 진행 해도 될까요?
질문의 요지는 code 갱신을 자동화 하기 위함 입니다.
access_token이 만료되었을 때, refresh_token을 이용하여 access_token을 갱신할 수 있습니다. authorization code를 저장해 두었다가 사용하는 것은 권장하지 않습니다. refresh_token을 이용하여 access_token을 갱신하는 것이 더 안전하고 효율적인 방법입니다.
refresh_token을 이용하여 access_token을 갱신하는 방법은 아래와 같습니다.
아 refresh_token을 이용하여 access_token 을 갱신 하는 방식으로 가야하는군요.
refresh_token 의 유요기간은 60일 이라고 하셧는데 refresh_token의 갱신은 어떻게 해야 할까요?
찾아 보니 refresh_token 의 유효기간으 1주일 이나 로 남은 시점에서 사용자 토큰 갱신 요청을 하면
갱신된 access token과 갱신된 refresh token이 함께 반환됩니다 라고 되어 있는걸 보았는데.
“사용자 토큰 갱신” 이라는 것이 refresh_token 일까요?
그렇다고 한다면 refresh_token 갱신은
url = “https://kauth.kakao.com/oauth/token”
data = {
“grant_type” : “authorization_code”,
“client_id” : “a654747bbbccdd8187262a134d197432”,
“redirect_url” : “https://example.com/oauth”,
“code” : authorization_code
}response = requests.post(url, data=data)
이렇게 요청을 하면 될까요? authorization_code 는 멘처음 받았던 코드로 사용을 하고.
혹은 다른 방법이 있나요?
유효기간은 2개월이지만, 1개월 남은 시점에 갱신 요청하면 refresh_token 재발급 후, 기존 refresh_token은 폐기됩니다.
토큰 갱신 요청 시, 응답으로 access_token만 전달되지만
refresh_token 재발급되면 access_token과 함께 refresh_token 전달되니
남은 기간과 무관하게 응답에 refresh_token이 있다면 교체 하셔서 사용하시면됩니다.