Language49 Access Token, Refresh Token Access Token이란? Access Token은 사용자의 권한이 확인(ex:로그인) 되었을 경우 해당 사용자를 인증하는 용도로 발급하게 됩니다. Cookie로 JWT를 발급하고 설정한 Expire 기간이 지날 때 인증이 만료되게 하는 것 또한 Access Token이라고 부를 수 있습니다. 사용자가 Access Token을 가지고 인증을 요청할 경우 Token을 생성할 때 사용한 비밀키(Secret Key)를 가지고 인증하기 때문에, 복잡한 설계없이 코드를 구현할 수 있고, 여러 분기를 거치지 않아도 된다는 장점이 있습니다. Access Token의 경우 Stateless(무상태) 즉, Node.js 서버가 죽었다 살아나더라도 동일한 동작을하는 방식입니다. 즉, JWT를 이용해 사용자의 인증 여부는.. 2022. 12. 19. JWT란? JWT 간략 정리 JSON 형태의 데이터를 안전하게 교환하여 사용할 수 있게 해 줍니다. 인터넷 표준으로서 자리 잡은 규격입니다. 여러 가지 암호화 알고리즘을 사용할 수 있습니다. header.payload.signature의 형식으로 3가지의 데이터를 포함합니다.(개미처럼 머리, 가슴, 배) 때문에 JWT 형식으로 변환된 데이터는 항상 2개의 . 이 포함된 데이터여야 합니다. JWT 구조 https://jwt.io/ 에서 간단히 확인할 수 있는데요, 위에서 말했듯이 개미처럼 머리, 가슴, 배와 같은 3가지를 가졌습니다. header(머리)는 signature(배)에서 어떤 암호화를 사용하여 생성된 데이터인지 표현합니다. payload(가슴)는 개발자가 원하는 데이터를 저장합니다. signautre(배).. 2022. 12. 19. 쿠키와 세션 쿠키와 세션이란? 쿠키(cookie) 브라우저가 서버로부터 응답으로 Set-Cookie 헤더를 받은 경우 해당 데이터를 저장한 뒤 모든 요청에 포함하여 보냅니다. 데이터를 여러 사이트에 공유할 수 있기 때문에 보안에 취약할 수 있습니다. 쿠키는 userId=user-1321;userName=sparta와 같이 문자열 형식으로 존재하며 쿠키 간에는 세미콜론(;)으로 구분됩니다. 세션(Session) 쿠키를 기반으로 구성된 기술입니다. 단, 클라이언트가 마음대로 데이터를 확인할 수 있던 쿠키와는 다르게 세션은 데이터를 서버에만 저장하기 때문에 보안이 좋으나, 반대로 사용자가 많은 경우 서버에 저장해야 할 데이터가 많아져서 서버 컴퓨터가 감당하지 못하는 문제가 생기기 쉽습니다. 쿠키(Cookie) 만들어보기 .. 2022. 12. 19. 화살표 함수 기본 화살표 함수라는 이름은 문법의 생김새를 차용해 지어졌습니다. 예시 let sum = (a, b) => a + b; /* 위 화살표 함수는 아래 함수의 축약 버전입니다. let sum = function(a, b) { return a + b; }; */ alert( sum(1, 2) ); // 3 보시는 바와 같이 (a, b) => a + b는 인수 a와 b를 받는 함수입니다. (a, b) => a + b는 실행되는 순간 표현식 a + b를 평가하고 그 결과를 반환합니다. 인수가 하나밖에 없다면 인수를 감싸는 괄호를 생략할 수 있습니다. 괄호를 생략하면 코드 길이를 더 줄일 수 있습니다. 예시 let double = n => n * 2; // let double = function(n) { return n.. 2022. 12. 16. nullish 병합 연산자 '??' nullish 병합 연산자(nullish coalescing operator) ??를 사용하면 짧은 문법으로 여러 피연산자 중 그 값이 ‘확정되어있는’ 변수를 찾을 수 있습니다. a ?? b의 평가 결과는 다음과 같습니다. a가 null도 아니고 undefined도 아니면 a 그 외의 경우는 b nullish 병합 연산자 ??없이 x = a ?? b와 동일한 동작을 하는 코드를 작성하면 다음과 같습니다. x = (a !== null && a !== undefined) ? a : b; 비교 연산자와 논리 연산자만으로 nullish 병합 연산자와 같은 기능을 하는 코드를 작성하니 코드 길이가 길어지네요. 또 다른 예시를 살펴봅시다. firstName, lastName, nickName이란 변수에 사용자 이름.. 2022. 12. 16. 자료형 요약 자바스크립트에는 여덟 가지 기본 자료형이 있습니다. 숫자형 – 정수, 부동 소수점 숫자 등의 숫자를 나타낼 때 사용합니다. 정수의 한계는 ±253 입니다. bigint – 길이 제약 없이 정수를 나타낼 수 있습니다. 문자형 – 빈 문자열이나 글자들로 이뤄진 문자열을 나타낼 때 사용합니다. 단일 문자를 나타내는 별도의 자료형은 없습니다. 불린형 – true, false를 나타낼 때 사용합니다. null – null 값만을 위한 독립 자료형입니다. null은 알 수 없는 값을 나타냅니다. undefined – undefined 값만을 위한 독립 자료형입니다. undefined는 할당되지 않은 값을 나타냅니다. 객체형 – 복잡한 데이터 구조를 표현할 때 사용합니다. 심볼형 – 객체의 고유 식별자를 만들 때 사.. 2022. 12. 16. 이전 1 2 3 4 5 6 ··· 9 다음