안녕하세요! 세션을 이용해서 인증하는 Passport에 대해서 알아보겠습니다. 이번 포스팅은 생활코딩님의 passport.js를 바탕으로 작성했습니다. 1. passport 인증 구현 passport란 사용자 인증 절차에 대한 로직을 간단하게 구현할 수 있도록 도와주는 Node.js 미들웨어입니다. 간단한 부분부터 차근차근 알아보겠습니다. 첫 단계에서 알아볼 과정은 main.js에서 어떻게 passport를 사용하는가에 관련된 내용입니다. main.js에서는 passport와 passport전략을 불러오고 각 요청에 알맞게 할당하면 됩니다. //main.js var passport = require('passport'), LocalStrategy=require('passport-local').Strate..
안녕하세요! 오늘은 노드 내장 객체 타이머에 대해서 알아보겠습니다. 1. 타이머 종류 타이머 기능을 제공하는 함수들은 다음과 같이 setTimeout,setInterval,setImmediate가 있습니다. 이때, 노드에서 타이머 객체는 global 객체 안에 들어있습니다. 그리고 타이머 함수들은 모두 아이디를 반환합니다. 반환된 아이디는 변수에 저장됩니다. setTimeout(콜백 함수, 밀리초) : 주어진 밀리초(1000분의 1초) 이후에 콜백 함수를 실행 setInterval(콜백 함수, 밀리초) : 주어진 밀리초마다 콜백 함수를 반복 실행 setImmediate(콜백 함수) : 콜백 함수를 즉시 실행합니다. setTimeout( 콜백 함수, 0)와 setImmediate(콜백 함수)의 차이점은 특..
안녕하세요! NodeJS의 내장 객체는 모듈 선언(import, require) 필요 없이 사용가능한 객체입니다. 오늘은 console.log로 자주 쓰이는 NodeJS 내장 객체인 console에 대해서 알아보겠습니다. 1. console 이란? console 객체는 터미널이나 커멘드 프롬프트에 메세지를 출력하기 위해 사용합니다. 보통 개발할때 디버깅을 위해 사용합니다. 변수에 값이 제대로 되어있는지, 어떤 에러가 발생했는지 콘솔에 출력해보며 디버깅합니다. 대표적으로 console.log를 많이 사용하지만, console 객체에는 다양한 메서드가 있습니다. console.log(내용): 콘솔에 메시지를 출력합니다. console.error(에러 내용): 콘솔에 오류 메시지를 출력합니다. console...
안녕하세요! NodeJS의 내장 객체는 모듈 선언(import, require) 필요 없이 사용가능한 객체입니다. 오늘은 NodeJS 내장 객체인 global에 대해서 알아보겠습니다. 1. global이란? global 객체는 전역 변수 및 함수에 대한 접근을 제공하는 객체 global 함수는 전역 객체이므로 모든 파일에 접근 가능 JavaScript의 window 객체와 유사 노드에서는 DOM이나 BOM이 없어서 window와 document 객체 사용 불가능 따라서 노드에서 window와 document를 아우르는 객체인 global을 사용 global 생략 가능 원래는 global.console이지만 global을 생략한 console 객체만 입력해도 사용 가능 REPL을 이용해 global 내부 ..
안녕하세요! 오늘은 NodeJS의 두가지 형식의 모듈에 대해 알아보려합니다. 각각의 모듈을 알아보기 전에, 모듈의 정의부터 알아보겠습니다! 1. 모듈이란? 모듈이란 특정한 기능을 하는 함수나 변수들의 집합입니다. 모듈은 자체로도 하나의 프로그램으로 사용할 수 있고, 다른 프로그램의 부품으로도 사용할 수 있습니다. 여러 프로그램에서 만들어놓은 모듈을 재사용할 수 있다. 파일별로 코드를 모듈화하며 정리할 수 있다. 노드에서는 크게 두 가지 형식의 모듈을 사용합니다. CommonJS모듈과, ECMAScript 모듈에 대해서 알아보겠습니다. 2. CommonJS 모듈 CommonJS 모듈은 NodeJS에서 가장 널리 쓰이는 모듈입니다. CommonJS에서 원하는 기능을 실행하는 모듈을 어떤 파일에서..
안녕하세요! 오늘은 REPL에 대해서 포스팅해보겠습니다. 1. REPL 정의 REPL이란 Read 읽고, Eval 평가하고, Print 결과물을 반환하고, Loop 반복한다의 약자입니다. 자바스크립트는 브라우저 콘솔탭에서 실행이 가능하듯, 노드에서는 REPL이라는 콘솔에서 실행이 가능합니다. 한마디로 REPL은 NodeJS 코드를 직접 입력할 수 있는 입출력장치입니다. 2. REPL 사용법 윈도우에서는 명령 프롬프트, 맥이나 리눅스에서는 터미널을 열고 node을 입력하면 됩니다. 저는 주로 VSCode에서 자주 개발하는데요, VSCode에서는 Ctrl+`을 누르면 사용할 수 있습니다. 만약, REPL을 종료하고 싶다면 Ctrl+C를 두번 누르거나, REPL 창에 .exit을 입력하면 됩니다. 3. 예제 ..
안녕하세요. 오늘은 NodeJS에서 개발하다가 흔하게 겪을 수 있는 에러인 EADDRINUSE에 대해서 알아보겠습니다. //에러 내용 node:events:491 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE: address already in use :::3000 at Server.setupListenHandle [as _listen2] (node:net:1741:16) at listenInCluster (node:net:1789:12) at Server.listen (node:net:1877:7) at Function.listen (실행 파일명,에러 발생한 코드 위치) at Object. (실행 파일명,에러 발생한 코드 위치) at ..
안녕하세요. 오늘은 널 병합(??) 연산자와 옵셔널 체이닝(?.) 연산자에 대해서 알아보겠습니다. 1. 널 병합 연산자 널 병합 연산자(??)는 falsy 값(0,'',false,NaN,null,undefinced) 중 null과 undefined만 따로 구분합니다. 밑의 예제를 보면 || 연산자의 경우 변수 a에 falsy 값인 0이 들어가있기 때문에 falsy 값이 아니라 뒤에 있는 값인 1을 변수 b에 대입했습니다. 하지만 널 병합 연산자의 경우 falsy값 중에서 null과 undefined만 구분하기 때문에 a가 null이나 undefined가 아니므로 b는 a인 0이 대입됩니다. const A = X ?? Y ; 1. X가 null ,undefined 인 경우 -> A = X; 2. X가 nu..
- Total
- Today
- Yesterday
- C++
- JS
- 혼공단
- 백준
- 개발
- 운영체제
- JavaScript
- nodejs
- 스페인
- AWS
- 혼공단 9기
- 혼공단 SQL
- 백엔드 개발
- 혼공
- 혼공학습단
- MySQL
- Process
- SQL
- googleapis
- Linux
- 깃 예제
- 해커톤
- 리눅스
- 교환학생
- 스페인 교환학생
- 개발일지
- 프로젝트
- 자바스크립트
- 공룡책
- Signal
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |