개인 프로젝트 작업 프레임워크 없이 SPA(싱글페이지어플리케이션) 만들기 [참고영상] Build a Single Page Application with JavaScript (No Frameworks) 작업 파일 (Github} https://github.com/hihisohi/mattarae GitHub - hihisohi/mattarae: 1차 스터디 개인 프로젝트 1차 스터디 개인 프로젝트. Contribute to hihisohi/mattarae development by creating an account on GitHub. github.com
Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org OAuth ▶ OAuth 란? Open Authorization : 서비스 제공자가 다른 서비스에게 데이터를 제공하기 위해 서비스 사용자에게 제공하는 사용자 인증방식의 표준 ▶ OAuth의 동작방식 서비스 제공자에게 인증 요청 → 인증 완료 후 사용자 정보를 요청한 서비스로 전달 → 인증 정보를 이용해 서비스 제공자의 데이터 사용 ex) 구글 캘린더 연동 서비스를 만든다고 가정하면, 구글 OAuth 인증 요청 → 인증된 OAuth Token을 기록 → OAuth Token을 사용하여 구글 캘린더 API 사용 ▶ OAuth와 로그인 - OAut..
Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org JWT ▶ JWT 란? JSON Web Token : 인증을 위한 정보를 특별한 저장소를 이용하지 않고, 전자 서명을 이용하여 확인하는 방법 ▶ JWT의 구성 - header : 토큰의 타입(jwt), 데이터 서명 방식 - payload : 전달되는 데이터 - signature : header 와 payload의 전자서명 JWT 는 Web Token → 데이터를 웹에서 사용하기 위한 스펙이므로 웹에서 문제없이 사용할 수 있는 문자열로만 구성된 base64 인코딩을 사용 참고) JWT 홈페이지 JWT.IO JSON Web Tokens are a..
Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 회원과 게시글 연동하기 ▶ 회원-게시글 연동 기능 설명 1) 게시글 작성 시 로그인된 회원 정보를 작성자로 추가 2) 게시글-작성자는 populate하여 사용하도록 구현 3) 게시글 수정, 삭제 시 로그인된 유저와 작성자가 일치하는지 확인 4) 작성자의 게시글 모아 보기 기능 구현 ▶ 회원-게시글 연동 기능 구현하기 1) PostSchema 수정 - PostSchema에 author 추가 - populate를 사용하기 위해 ObjectID 사용 - ref를 유저 모델의 이름인 'User'로 선언 ... author: { type: Schema..
🌱 [인프런] 따라하며 배우는 노드, 리액트 시리즈 - 기본강의 [무료] 따라하며 배우는 노드, 리액트 시리즈 - 기본 강의 - 인프런 | 강의 이 강의를 통해서 리액트와 노드를 어떻게 사용하는지 기본적인 내용들을 배울 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com # boiler-plate 만들기 (#30 ~ #31) 30. Login 페이지 만들기 (2) 저번에 onEmailHandler, onPassswordHandler 만들어서 각 input 태그에서 문자가 입력되는 것까지 확인. Login 버튼 클릭하여 form이 submit될 때 실행될 onSubmitHandler 작성해서 form 태그에 onSubmit 이벤트 달아줌 submit 시, 새로고침 막고 → even..
Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 회원가입 구현하기 ▶ 구현할 회원가입 기능 설명 이메일, 이름, 패스워드의 간단한 정도만 사용 1) 회원가입 페이지 구현 2) script를 이용해 이메일 형식, 비밀번호 길이 및 비밀번호확인 문자열과 일치여부 확인 3) form을 이용해 post 요청 전송 4) 회원가입 처리 및 redirect * 비밀번호 저장 시 암호화하여 저장 (Hash) Hash : 문자열을 되돌릴 수 없는 방식으로 암호화하는 방법 → hash 출력값으로는 사용자의 원래 비밀번호를 알아낼 수 없음 → 비밀번호의 Hash 값을 데이터베이스에 저장하고, 로그인 시 전달된..
🌱 [인프런] 따라하며 배우는 노드, 리액트 시리즈 - 기본강의 [무료] 따라하며 배우는 노드, 리액트 시리즈 - 기본 강의 - 인프런 | 강의 이 강의를 통해서 리액트와 노드를 어떻게 사용하는지 기본적인 내용들을 배울 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com # boiler-plate 만들기 (#27 ~ #29) 27. Redux 심화 Redux 관련 dependency들 다운받기 npm install redux react-redux redux-promise redux-thunk --save Redux-promise, Redux-thunk 미들웨어들을 받은 이유 redux store는 객체형식의 action만 받는데 store가 못받는 promise나 function..
Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org Async Request Handler ▶ request handler의 오류처리 방법 - promise().catch(next) - async function, try ~ catch, next ▶ async request handler async의 비동기 처리는 매우 편리하지만 매번 try - catch 구문을 작성하는 것은 귀찮고 실수하기 쉬움 → request handler를 async function으로 작성하면서 try ~ catch, next를 자동으로 할 수 있도록 구성한 아이디어 const asyncHandler = (reque..
Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 프로젝트 개요 ▶ 간단한 게시판 제작하기 - PUG Template Engine 사용하기 - 기본적인 CRUD 동작을 하는 웹 만들기 - PM2 Process Manager 이용하여 Node.js 어플리케이션 관리하기 ▶ 구현할 기능들 게시판 기능 게시글 목록 / 상세보기 / 작성 / 수정 / 삭제 회원 기능 회원가입 / 로그인 / 비밀번호 찾기 추가 기능 Pagination / 구글 로그인 / 유저 작성글 모아보기 Template Engine ▶ Template Engine 이란 ? 서버에서 클라이언트로 보낼 HTML의 형태를 미리 템플릿으..
Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org Mongoose ODM ▶ Mongoose ODM 이란? MongDB의 Collection에 집중하여 관리하도록 도와주는 패키지 → MongoDB의 Collection을 JavaScript의 model로써 만들어놓고 이 model을 통해 MongoDB의 데이터들에 쉽게 접근하고 관련 기능들을 쉽게 사용할 수 있도록 도와줌 * ODM (Object Data Modeling) : Data를 Object로 Model화하여 관리 ▶ Mongoose를 사용하는 이유 1) 연결관리 : MongoDB에서 기본 제공하는 Node.js 드라이버는 연결상태를 ..