본문 바로가기

Back-end6

Token & Token-based Authentication 의 동작 과정 (feat. JWT) 📌 Token ? 프로그래밍 언어에서의 token 문법적으로 더 이상 나눌 수 없는 기본적인 언어 요소를 말한다. 키워드나 연산자, 구두점 등이 token 이 될 수 있다. 네트워크에서의 token 네트워크를 따라 돌아다니는 암호화된 비트열이다. 각 네트워크에는 오직 하나의 token 만 존재하므로 2개 이상의 컴퓨터가 동시에 메세지를 전송할 가능성을 사전에 차단한다. 보안시스템에서의 token 크레딧 카드 크기의 작은 장치를 말한다. 사용자가 처음에 암호를 입력하면, 카드는 네트워크에 접속할 수 있는 ID를 수시로 변경해가며 표시해준다. --> 공유 자원 접근에 대한 동기화를 보장하기 위해 사용되는 추상적인 개념이다. --> token 을 가진 사람이라면 누구나 특정 자원에 배타적 접근이 허용되고 (선.. 2021. 11. 26.
Session & Session-based Authentication 의 동작 과정 📌 Session ? 클라이언트가 서버에 data 를 저장할 수 있는 방법 중 하나로, 특정 저장 공간을 의미한다. session 은 특별한 경우가 아니라면 사용자가 웹 브라우저를 접속한 시점부터 종료하는 시점까지 유지된다. 📌 Session-based Authentication 동작 과정 ? 📎 express-session 모듈 // express-session 모듈 const express = require('express'); const session = require('express-session'); const app = express(); app.use( session({ secret: , resave: , saveUninitialized: , . . . cookie: { domain: , p.. 2021. 11. 25.
CommonJS 와 ES(6) 모듈 키워드 ( require vs import ) 차이 📍 공부하게 된 계기 require 와 import 의 차이가 궁금해서 파보다가 ... CommonJS 와 ECMAScript 까지 살펴보게 되었다. 하면서 느낀거지만, 자바스크립트를 사랑하는 개발자가 많은 것 같다. 자바스크립트의 무한한 잠재력에 놀라면서도, 그걸 확장시키는 개발자들이 있기에 내가 이렇게 편하게 코딩을 할 수 있는 게 아닌가 싶다 ㅎ 📌 CommonJS 자바스크립트 언어의 활동 영역을 더 넓히기 위해 조직된 그룹이다. 브라우저 이외에도 ✔ Server-side JS applications ✔ CLI tools ✔ Desktop GUI-based applications ✔ Hybrid applications 등 다양한 어플리케이션에 자바스크립트 언어가 쓰일 수 있도록 표준화된 라이브러리를.. 2021. 11. 14.
.env 파일 관리부터 dotenv & DB랑 NodeJS 연결하기 📌 .env 파일 ?-? " 환경 변수 파일 " 을 의미한다. 이 파일은, 애플리케이션이 실행될 때 넘기고 싶은 특정 값을 담고 있는 변수가 기록되어 있다. 미리 정의된 값을 애플리케이션에서 활용하고 싶을 때 이 .env 파일을 활용한다. 📂 .env // .env 파일 // DB에 접속하기 위해 필요한 username과 password와 dbname을 변수에 차례차례 담아줬다. DATABASE_USERNAME='lee' DATABASE_PASSWORD=1234 DATABASE_NAME='learnsql' // .env 파일 // local URI 와 test server를 위한 URI, id와 비밀번호 등등 다양한 방식으로 담아둘 수 있다. REACT_APP_LOCAL_URI=http://localho.. 2021. 11. 13.
Node.js npm과 package.json 📌 npm이란?? Node Package Manager 약자 node.js 환경에서 필요한 모듈을 다운받기 위한 "모듈 스토어" 이다. ( ex. 리눅스의 PM은 apt, MacOS의 PM은 brew, Node.js의 PM은 npm ) 다른분들이 만들어놓은 좋은 모듈들을 node.js에서는 "nmp모듈" 이라고 부른다. 우리는 이러한 모듈들을 어떻게 효율적이고 생산적으로 조립할건지 지속적으로 고민해야한다. 🏁 npm 설치했을 때 장점 프로젝트 코드를 다른 사람에게 전달할 때, 프로젝트가 포함하고 있는 모든 모듈을 다 전달하지 않아도 된다 ! --> "우리 코드는 여기있고, 필요한 모듈들은 package.json에 있는 리스트 보고 네가 직접 다운받아서 써 ~" ◾ npm 설치하기 npm install ◾.. 2021. 8. 5.
Node.js 는 뭐야? 일단 설치해봐 Ubuntu 20.04.2 LTS 환경에서 실행되었습니다. Achivement Goals ✅ nvm, Nodejs, npm을 설치하고, 버전을 확인할 수 있다. ✅ 명령어 node를 이용해 JavaScript 파일을 실행할 수 있다.\ ✅ 스프린트 시작 전 package.json 파일을 확인하고, npm install을 사용할 수 있다. 📌 Node.js는 또 뭐야? JavaScript의 런타임. 🏁 런타임이란? 어떤 프로그램이 동작할 때, 프로그램이 동작하는 곳 ( ex. 웹 브라우저 ) 자바스크립트의 런타임은 웹 브라우저 밖에 없었는데, node.js의 등장으로 그 역할이 확장되었다. 웹 페이지 뿐만 아니라 서버와 같은 다른 프로그램도 만들 수 있다 ! ! // runnode.js const test.. 2021. 8. 4.