반응형

node.js 6

[node.js] Express_ Router객체

익스프레스를 사용하는 이유 중 하나는 라우팅을 깔끔하게 관리할 수 있다는 점이다. app.js의 라우터 부분을 보자. 익스프레스 앱과는 달리 위와 같이 연결되어 있다. app.use를 사용하므로 라우터도 일종의 미들웨어라 생각하자. 다른 미들웨어와 가르게 앞에 주소가 붙어 있으니 첫번째 인자로 주소를 받아서 특정 주소에 해당하는 요청이 들어 왔을때, 미들웨어가 동작한다. 주소가 / 로 시작하면 routes/index.js 를 /user로 시작하면 routes/user.js를 호출하라는 의미이다. use 대신 get,post,put,patch,delete 와 같은 HTTP 메서드를 사용할 수 있다. get, post : 요청을 하는 것 sned, sendfile, json, render : 응답을 보내는 ..

node.js 2019.08.24

[node.js] Express_구조 와 미들웨어

익스프레스 프레임워크는 이것 외에도 다양한 패키지를 필요로 한다. 기본 generate가 있으니 이것을 이용하여 설치하면 좋다. 먼저 익스프레스는 http 모듈의 요청과 응답 객체에 추가 기능들을 부여한다. 기존 메서드들로 계속 사용할 수 있으며 편리한 일부 메서드들을 추가하여 기능을 분리하였다. npm i -g express-generator 명령어로 전역설치하고 해당 폴더에 새로운 express 프로젝트를 생성하려면 express [프로젝트 명] --view=pug 라고 입력한다. --view는 템플릿 엔진중 Pug로 사용한다는 뜻이다. Pug와 EJS가 있다. 이렇게 기본 generator가 설치되고 그안에 폴더구조로 app.js route view 등의 폴더구조들이 있다. app.js가 핵심 서버..

node.js 2019.08.24

[Node.js] NPM 시작하기

NPM : Node Package Module npm은 노드 패키지 매니저로 여기서는 npm을 통해 업로드된 노드 모듈을 사용하는 방법과 명령어에 대해 간단하게 알아보자. npm은 package.json 으로 설치한 패키지의 버전을 관리한다. 시작해보자 콘솔창을 열어 설치할 폴더경로로 이동해 'npm init' 를 입력한다. 작성할 부분만 간단하게 작성하고 위와같은 결과로 yes를 입력한다. 파일이 생성되었는지 확인한다. 다음과 같이 생성되었음을 알 수 있다. 보통 test 스크립트 외에 start명령어에 node [파일명] 으로 저장하고 npm start로 시작한다. 패키지를 설치해보자. 다음부터 계속 이것을 기본으로 시작할 것이다. 콘솔에 npm install express 를 입력한다. 다음과 같이..

node.js 2019.08.21

[Node.js] Node 내장 객체 및 모듈

노드는 코드를 모듈로 만들 수 있다는 점에서 브라우저의 자바스크립트와 다르다. 모듈이란 특정한 기능을 하는 함수나 변수들의 집합이다. 모듈의 사용법을 간단하게 알아보자 com.js f.js index.js 위와 같은 결과를 얻을 수 있다. 배열 위의 [..] 결과는 파라미터 10을 지우고 얻은 결과이다. 함수 ff를 제대로 사용함을 보여주고 있다. 노드의 내장객체로는 global, console, 타이머, process 등이 있는데 이중 __dirname만 살펴보자. __dirname 은 경로에 대한 정보를 제공한다. 이것을 실행하면 현재 파일명과 경로로 바뀐다. 노드 내장 모듈로 OS, path, url, querystring 등이 있으며 파일 시스템을 접근하기 위해 fs모듈도 있다. 필요에 따라 해당..

node.js 2019.08.21

[node.js] 콜백 함수, 프로토타입

Node.js를 하기전에 자바스크립트에서 중요한 콜백함수와 프로토타입 객체에 대해 한 번더 알아보고 가자. 콜백함수 함수를 파라미터로 전달하는 경우는 대부분 비동기 프로그래밍 방식이기 때문이다. 예를들어 더하기 함수를 실행하는데 시간이 걸리기 때문에 그다음 코드를 바로 실행한다. 그리고 연산이 끝났을 떄, 파라미터로 전달한 함수가 실행될 수 있다면 그 시점에 결과를 처리할 수 있으므로 효율적인 프로그램을 만들 수 있다. 이 때 파라미터로 전달되는 함수를 콜백 함수라고 한다. 예를 보자. 1 2 3 4 5 6 7 8 const add = (a,b,callback) =>{ var r = a+b; callback(r); } add(10,10,(r)=>{ console.log('파라미터로 전달된 콜백함수 호출'..

node.js 2019.08.17

[node.js] ES6 문법

자바 스크립트의 문법에 변화를 가져온 것이 ES2015 혹은 ES6라고 부른다. 매년 문법 변경사항과 새로운 문법상세에 대해 늘 새로워진 것이 나온다. 언제나 변화에 민감하고 변화하는것을 배워야 한다고 생각한다. 이 중 몇개만 살펴보자. const, let 자바 스크립트에서는 var로 변수를 선언한다. 이제는 const와 let이 대체한다. var은 함수 스코프를 가지므로 블록 밖의 스코프를 접근할 수 있지만, const와 let은 그럴 수 없다. const와 let의 차이는 const는 한 번 대입하면 다른 값을 대입할 수 없다. 초기화 시 값을 대입하지 않으면 에러가 발생한다. 그래서 변수 선언시 const를 사용하고 다른 값을 대입할 일이 생긴다면 let을 사용하자. 1 2 3 4 5 6 7 8 9..

node.js 2019.07.29
반응형