목록분류 전체보기 (20)
0strich
프로젝트 진행 중 필요한 npm 모듈이 3년 전이 마지막 업데이트여서 수정해서 사용해야 하는 경우가 생겼다. 이런 경우 해당 모듈의 git을 fork 받아서 수정 후, npm에 publish 하는 것으로 누군가가 만들다만 코드를 활용할 수 있다. react-native-credit-card-input 사용하려고 한 모듈은 신용카드 정보를 입력할 수 있는 모듈이다. Github Commit History를 보면 다음과 같이 마지막 커밋이 3,4년 전인 것을 확인할 수 있다. 수평으로 고정되어 있는 카드 정보 입력창을 변경해서 사용하고 싶지만, 기존의 모듈에서 수직으로 설정하는 부분을 만들어 놓지 않았다. 나머지 기능들은 매우 유용하기 때문에 정말 아쉬는 부분이다. 이 부분을 git fork 후, 소스코드를..
프로젝트 진행 중에 세션 인증 사용할 때의 세션 저장 리소스를 줄이기 위해 JWT Token 인증 방식을 적용하기로 했다. 이번 글에서는 토큰 인증의 서버 코드를 구현할 것이다. 유저 정보를 저장하는 데이터베이스는 편의상 배열에 저장하도록 하자. 우선 jwt token 인증이 흐름이 아래 그림을 통해 확인해 보자 서버 측에서 작성해야 할 코드는 사용자가 로그인을 시도하면 사용자를 검증한 후, access, refresh token을 모두 발급해 준다. 또한 access token의 만료를 확인해주고, refresh token을 받아서 새로운 access token을 발급해줘야 한다. Install 우선 jwt를 실습하기 위해 필요한 모듈을 설치가 필요하다. 다음 명령어들을 차례대로 실행해 보자 npm i..
프로젝트에 필요한 로그인, 회원가입 구현을 위해 인증에 대해 학습해 보자 이번 글에서는 클라이언트, 서버 간의 인증 방법들과 왜 이러한 인증이 필요한지에 대해서 알아볼 것이다. HTTP 특징과 쿠키/세션을 사용하는 이유 쿠키/세션에 대해 알아보기 전에 어째서 사용하는지에 대해 알아보자 HTTP는 Connectionless, Stateless 한 특징이 있다. 이러한 특징이자 약점을 보완하기 위해 쿠키와 세션을 사용한다. Connectionless : 요청 응답이 한번 이루어지면 연결을 끊음 Stateless : 통신이 끝나면 상태를 유지하지 않음 위와 같은 특징으로 인해 사용자가 로그인을 했음에도 불구하고 페이지를 이동할 때마다 로그인을 해야 하는 불편함이 생길 수 있다. 이러한 점을 보완하기 위해 쿠키..