Laravel(Lumen)JWT-Auth 리 셋 token 문제 해결
처음에는 작가 의 디자인 사상 을 잘 이해 하지 못 하고 많은 issue 를 본 후에 jwt-refresh 가 어떻게 사용 하 는 지 알 게 되 었 다.
'auth/refresh-token'과 같은 경 로 를 만 들 면 어떤 방법 을 가리 킬 수도 있 고 익명 함 수 를 직접 쓸 수도 있 습 니 다.
$app->post('auth/refresh-token', ['middleware' => 'jwt.refresh', function() {
try {
$old_token = JWTAuth::getToken();
$token = JWTAuth::refresh($old_token);
JWTAuth::invalidate($old_token);
} catch (TokenExpiredException $e) {
throw new AuthException(
Constants::get('error_code.refresh_token_expired'),
trans('errors.refresh_token_expired'), $e);
} catch (JWTException $e) {
throw new AuthException(
Constants::get('error_code.token_invalid'),
trans('errors.token_invalid'), $e);
}
return response()->json(compact('token'));
}]);
token 이 효력 을 잃 으 면 이 주 소 를 방문 하여 오래된 token 을 가 져 오 면 새로운 token 을 얻 을 수 있 습 니 다.새 token 을 저장 하고 api 에 접근 할 때 새 token 을 사용 합 니 다.이렇게 반복 한다.token 의 효 과 는 매우 짧 지만 기본 값 은 한 시간 이지 만 갱신 시간 은 2 주 에 달 하 며 중복 로그 인 보다 편리 합 니 다.
클 라 이언 트 가 로그 인 한 후에 token 을 저장 하면 사용자 이름 비밀 번 호 를 가 져 올 위험 을 줄 일 수 있 습 니 다.
이곳 에 bug 가 있 습 니 다.오래된 token 은 더 이상 사용 할 수 없 지만 새로운 token 을 얻 을 수 있 습 니 다.이 문 제 는 0.6 판 에서 복원 되 었 다.급 하면 0.6 판 을 사용 할 수 있다.
처음에는 token 이 새로 고침 한 후에 계속 사용 할 수 있다 고 생각 했 는데 원래 새로운 token 으로 바 뀌 었 는데 이어서 사용 할 수 있 는 사상 이 가능 한 지 모르겠다.
이상 의 이 Laravel(Lumen)이 JWT-Auth 리 셋 token 문 제 를 해결 한 것 은 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 께 참고 가 될 수 있 고 많은 응원 부 탁 드 리 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
단순 Laravel+Vue.js에서 VueUI를 사용하여 로그인 및 등록Laravel에는 웹 팩과 같은 Laravel-Mix가 있는데, 이를 이용해서 Laravel에 Vue.js를 실현할 수 있다. 이번에는 몇 가지 명령을 통해 간단하게 VueUI로 로그인하여 로그인을 할 수 있습니다....
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.