관심있는 언어들/Node.js 4

[Node.js] REPL 사용 및 모듈 만들기

node.js는 자바스크립트 실행기입니다. 즉, 브라우저에서 개발자 도구 콘솔 창에서 실행 안 해도 컴퓨터에서도 동작한다는 것입니다. 노드의 이러한 동작을 REPL이라고 합니다!! R은 Read, E는 Eval P는 Print, L은 Loop 이 단어들을 합치면, "읽고나면 해석해서 반환하고 다시 반복한다"입니다. REPL을 실행하려면, cmd에 node를 입력해야 합니다. (node.js를 다운로드하으셔야 가능합니다.) 이렇게 브라우저 콘솔처럼 제가 넣은 짧은 코드에 대해서 결과가 나옵니다. undefined가 나오는 이유는 console.log()가 return 값이 없어서 그렇습니다. 1. 자바스크립트 파일 실행해보기 이렇게 node에 파일 이름만 써서 실행도 가능합니다. 2. 모듈로 만들어보기 /..

[Node.js] 이벤트 루프

안녕하세요 건브로입니다. node.js뿐만 아니라 자바스크립트도 해당하는 부분인데요. node.js는 자바스크립트 실행기니까 당연히 해당합니다! 1. 이벤트 기반 node.js는 이벤트 기반으로 동작합니다. 2. 이벤트 루프와 관련된 용어 이벤트 루프란 이벤트 발생 시 호출할 콜백 함수들을 관리하고, 호출된 콜백 함수의 실행 순서를 결정하는 역할을 담당합니다. 노드가 종료될 때까지 이벤트 처리를 위한 작업을 반복해서 루프라고 부릅니다. 백그라운드란 타이머나 비동기적으로 실행되는 이벤트 리스너들이 대기하는 곳입니다. 이 부분은 호출 스택과 동시에 돌아가므로 싱글 스레드 기반인 node.js가 아닌 다른 언어로 된 부분입니다. 태스크 큐란 이벤트 발생 후, 백그라운드에서는 태스크 큐로 타이머나 이벤트 리스너..

[Node.js] 초보자의 JWT 정리

안녕하세요 건브로입니다. 오늘은 JWT에 대해서 정리 해보겠습니다. 일단, 정리하기 전에 이 글은 정리한 만큼 저의 생각도 포함되어 있습니다. 그리고 구글링으로 찾아봐도 잘 없는 mysql + express + react를 제가 직접 부딪히면서 만들어본 경험을 바탕으로 글을 쓰겠습니다. ※주의: 1.밑에 나오는 코드는 새로 쓴 코드가 아닌 제가 만들다가 적용한 코드이므로 부분적으로만 참고하기를 바랍니다. 2. 클라이언트와 서버를 클라이언트 쪽 package.json에서 proxy를 적용해서 클라이언트와 서버가 통신이 가능하다는 전제로 보셔야 합니다. 3. mysql table 만드는 부분은 생략했으며, 쿼리를 이용해서 데이터를 꺼내거나 데이터를 넣는 것만 설명이 있으니 주의 바랍니다. "proxy": "..

[Node.js] 쿠키

안녕하세요. 건브로입니다. 쿠키란 무엇일까요? 쿠키는 브라우저에서 데이터를 저장할 수 있게 하는 기능입니다. 사용자가 처음 로그인 할 때 아이디와 비밀번호를 입력해야 하지만 쿠키가 있으면 그 다음에 로그인 할 때는 로그인 되어 있게 할 수 있어요. 웹 브라우저에는 쿠키 말고도 Local Storage, IndexedDB 등 웹 브라우저에서 데이터를 저장할 수 있는 것들이 있고, 용량도 쿠키보다 큽니다. 오늘은 쿠키에 대해서 알아봅시다. 1. 쿠키 세팅하기 //cookie.js var http = require('http'); var cookie = require('cookie'); http.createServer((request, response)=>{ var cookies = {}; if(request..