프론트작업을 구현하면서 모르는것들이 있어서 알아보다가 나중에 참고하기 위해 정리.
1. getAttribute
속성에 있는것을 가지고 오기위해 사용한다.
ex ) element.getAttribute('속성') // 속성에 접근한다.
2.setAttribute
속성에 있는 값들을 설정하기 위해서 사용한다.
ex ) element.setAttribute('속성','값') // 속성을 추가한다.
3.removeAttribute
속성에 있는 값들을 제거할때 사용한다.
ex ) element.removeAttribute('속성') // 속성을 제거한다.
요소들의 속성을 다룰때에는,
접근을 할때 = element.getAttribute('속성')
추가를 할때 = element.setAttribute('속성','값')
제거를 할때 = element.removeAttribute('속성')
JWT / Access Token / Refresh Token 란 ?
JWT : 유저를 인증하고 식별하기 위한 토큰이다. 이 토큰은 세션과는 다르게 서버가 아닌 클라이언트에 저장됨
access token : 액세스토큰은 보호된 정보들에 접근할 수 있는 권한 부여에 사용된다. 클라이언트가 처음 인증을 받게 될때 (주로 로그인) 액세스토큰, 리프레시토큰 둘다 받게 되지만 실제로 권한을 얻는데 사용하는 토큰은 액세스토큰 이다. 권한을 부여받을때 액세스토큰만 있으면 되지만, 해커나 악의적으로 접근하는 이용자에게 토큰이 탈취가 된다면, 로그인을 해서 개인정보라던가 여러 액션을 취할수 있다.
그래서 주로 액세스토큰의 만료기간들을 짧게 주고 오래 사용하지 못하도록 시간을 설정한다.
refresh token : 리프레시토큰은 액세스토큰과 달리 서버에 저장되기 때문에 토큰이 해커나 악의적으로 접근한 이용자들에게서 탈취당했다라고 판단이 됐을때, 서버에서 리프레시토큰을 삭제함으로써 강제 로그아웃을 할 수 있다. 보통 액세스토큰은 짧게 시간을 설정하지만 리프레시토큰은 비용적인 부분때문에 액세스토큰보다 더 길게 시간설정을 하는 방식으로 많이 사용한다.