본문 바로가기

Back End/Server

(19)
[Server] Jwt Token vs Session -1- (Session편) [Server] Jwt Token vs Session -1- (Session편) 개요 프로젝트를 진행하며, 프로젝트의 목적에 맞는 로그인 방식을 찾기 위해 공부한 Jwt Token을 통한 로그인과 Session을 통한 로그인 방식의 차이점을 알아본다. 그 중, 1편에서는 Session에 대해 이해하고 공부한다. 목차 Cookie 란? Session 이란? 소개 1. Cookie 란? Cookie 란? Cookie란, 브라우저가 저장하고자 하는 텍스트정보를 담은 작은 기록 정보 파일이다. 유저는, 특정 웹 브라우저에 접근 할 때, 이전에 받은 Cookie정보와 함께 서버에 요청을 하게 되며, 서버는 쿠키의 유효성을 확인하여 로그인을 유지해주는 역할을 할 수 있게 된다. Cookie의 보안 이슈 http o..
[Server] node.js 자동 로그인 구현 (Cookie + Session 활용) [Server] node.js 자동 로그인 구현 (Cookie + Session 활용) 개요 Cookie(쿠키)와 Session(세션)을 통해 자동로그인 로직을 구현해본다. 목차 app.js 설정 자동 로그인 시 Cookie값 설정 및 Session값 설정 구현 Logic 소개 1. app.js 설정 app.js 설정 Client가 로그인 요청을 하면 Server는 요청한 Client와의 Session을 열어준다. app.js this.app.use(cookieParser()); //Cookie 값을 읽기 위한 setting this.app.use( //session을 저장하기 위한 setting session({ secret: process.env.SESSEONKEY, resave: false, //r..
[Server] node.js 비밀번호 초기화 API 구현 [node.js] 비밀번호 초기화 API 구현하기 개요 node.js를 기반으로 비밀번호 초기화 API를 구현한다. 목차 Email 검증 및 Token 생성 Nodemailer module을 통해 비밀번호 초기화 링크 전송 Token 값 검증 및 비밀번호 재설정 소개 1. Email 검증 및 Token 생성 HTML 페이지에서 비밀번호를 재설정 할 Email과 함께 POST 요청 왼쪽의 이메일 전송 버튼을 클릭하여 서버로 POST 요청을 보낸다. Email 검증 및 Token 생성 app.post('/password-reset', function(req, res) { //Database에서 요청받은 Email이 존재하는지 확인 const emailId = await UserStorage.verfiedEm..
[Server] Open API인 KaKao Map을 이용하여 위도 경도 얻기 Open API인 KaKao Map을 이용하여 위도 경도 얻기 개요 Open API인 KaKao Map을 이용하여, 원하는 주소의 위도와 경도 값을 Javascript의 axios를 통해 가져온다. 목차 REST API Key 발급 axios를 통해 위도와 경도 정보 요청 데이터에서 원하는 값인 위도(latitude)와 경도(longtitude) 값 추출 소개 1. REST API Key 발급 Application 등록 및 App Key 발급 ① https://developers.kakao.com/ 로 접속들어간 후 내 애플리케이션을 클릭한다. ② Open API를 사용하고자 하는 Application의 정보를 등록한다. ③ 그 후 애플리케이션에 관한 정보를 입력하여준다. ④ 생성 된 애플리케이션을 클릭..
[Server] Open API인 KaKao Map을 이용하여 위치를 지도에 표시하기 Open API인 KaKao Map을 이용하여 위치를 지도에 표시하기 개요 Open API로 제공되는 KaKao Map을 이용하여, 주어진 위치를 프론트엔드로 나타내어 표시하여준다. 목차 Kakao App Key 발급 html의 Javascript code 입력 구현 화면 소개 1. Kakao Application 등록 및 App Key 발급 Application 등록 및 App Key 발급 ① https://developers.kakao.com/ 로 접속들어간 후 내 애플리케이션을 클릭한다. ② Open API를 사용하고자 하는 Application의 정보를 등록한다. ③ 그 후 애플리케이션에 관한 정보를 입력하여준다. ④ 생성 된 애플리케이션을 클릭 후 요약정보에서 JavaScript Key를 복사하..
[Node.js vs Spring] Node.js vs Spring의 차이 Node.js vs Spring 차이점 개요 프로젝트 진행에 앞서 목표에 맞는 언어를 선택하기 위해 백엔드 개발에 많이 언급되는 Node.js와 Spring의 차이점에 대하여 알아본다. 목차 Node.js란? Spring 이란? Node.js vs Spring Node.js & Spring Boot Companies 소개 Node.js란? Node.js의 정의 Node.js 는 Google Chrome의 V8 Javascript 엔진으로 빌드된 Javascript 런타임이다. 풀어서 설명하자면 C++로 작성된 Google의 고성능 오픈소스 V8 Javascript 엔진을 사용하여 Javascript로 만든 프로그램을 실행시켜주는 환경이라고 할 수 있다. 정리하자면 Node.js는 언어가 아닌, Javas..
[Server] Java Servlet(자바 서블릿) 그리고 JSP(Java Server Page) Java Servlet(자바 서블릿) 그리고 JSP(Java Server Page) 개요 Java 언어를 통해 웹서버에서 동적으로 웹 페이지를 생성할 수 있는 Servelt 과 JSP에 대하여 알아보고, 둘 의 차이점을 이해한다. 목차 Java Servlet(자바 서블릿) Servlet Container(서블릿 컨테이너) JSP(Java Server Page) Servlet vs JSP 소개 1. Java Servlet(자바 서블릿) Servlet 이란? Java Servlet 이란, 자바(Java) 언어를 사용하여 웹 페이지를 동적으로 생성할 수 있도록 하는 자바 클래스의 일종으로 구성된 서버측 프로그램이다. 쉽게 풀어 설명하면, 클라이언트가 서버측으로부터 무언가를 요청하면, 서버는 이러한 요청을 확인..
[Server] KaKao 를 이용한 소셜 로그인 구현 KaKao를 이용한 소셜 로그인 구현 개요 Client로부터 KaKao에게 받은 jwt token을 건내받아, Server가 KaKao에게 Client로 부터 받은 jwt token을 확인하는 방식을 통해 소셜로그인을 구현하여본다. 목차 Token 발급 NPM module 적용 Code 작성 결과 확인 소개 1. Token 발급 A. KaKao Developer를 통한 My Application 등록 Kakao Developers에 접속하여 KaKao 로그인 후 My Application에서 애플리케이션을 추가하여준다. B. Web 플랫폼 등록 작성한 Application의 플랫폼 설정에서, local 환경과 Server 환경에서의 사이트 도메인을 Web 플랫폼에 작성하여준다. C. Redirect UR..