개발 이모저모/Node.js (10) 썸네일형 리스트형 Window nvm설치 / node.js 설치 / node.js 버전관리 nvm이란? nvm도 node version manager의 약자로, node.js의 버전관리 도구이다. node.js는 버전이 빠르게 바뀌어서 동일한 서버 환경 내에서 여러버전을 사용할 때 버전을 전환하면서 사용할 수 있어서 유용하다. nvm은(노드 버전 관리도구)는 여러버전의 node.js를 설치 하고, 버전을 선택해서 사용할 수 있어 많이 사용하는 방법이지만, Mac/Linux에서만 사용할 수 있어 window에서는 사용할 수 없다. Window환경에서는 nvm-windows를 설치하고, node.js와 npm을 설치하는 것이 좋다. nvm 및 node.js 설치과정 nvm-windows github 레퍼지토리이다! nvm-windows에 대한 설명들이 있으니 확인 할 수 있다. https://gi.. Window Node.js 설치 / 윈도우 노드 설치 공식 사이트에서 Node.js 파일을 다운 받을 수 있고, 사용하고 있는 컴퓨터의 사양에 맞게 설치하면 된다! https://nodejs.org/en/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org https://nodejs.org/en/download/ Download | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 컴퓨터에 새로 Node.js를 설치하는 것이라서 LTS버전 중 제일 최신 버전인 18.14.1을 다운받았다. 다음과 순서로 설치한다. 설치경로를 변경 하려.. Node.js 란? ( 소개 및 특징 ① 편 _ 자바스크립트 런타임) ▶ Node.js란 ? 크롬 v8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 언어로 작성언어는 자바스크립트를 활용했다. 특징으로는 싱글스레드 이벤트루프와 논블로킹 I/O모델로 높은 처리성능을 가지고 있다. 또한, 내장 HTTP서버 라이브러리를 포함하고 있어서 웹서버에서 아파치 등과 같은 별도로 설치하지 않아도 동작할 수 있다. - 공식 사이트 : https://nodejs.org/ko/about/ - 위키백과 : https://ko.wikipedia.org/wiki/Node.js ▶ Node.js의 특징 - 자바스크립트 런타임 (런타임이란? 특정언어로 만든 프로그램들을 실행할 수 있는 환경을 의미한다) 노드는 자바스크립트 프로그램을 컴퓨터에서 실행할 수 있게 해준다. 기존 자바스크립트는 브라우저 위.. setTimeout / clearTimeout 일정 시간 뒤에 원하는 동작을 할 때는 setTimeOut을 쓰면 된다. setTimeout 함수는 일정시간이 지난 후 함수가 한번 실행되고, clearTimeout 함수는 setTimeout함수를 취소하는 역할을 한다. *사용예제 - 일정 시간 뒤 로그아웃 처리할 때 - 몇초뒤에 이벤트 팝업을 띄울 경우 * setTimeout 함수 setTimeout( [함수 또는 문자열], [ 지연될 시간 ] , [인자1], [인자2], . . . ); 1. [함수 또는 문자열] 실행하려고 하는 코드로 함수자체를 넣거나, 함수명(문자열)을 입력한다. 보통 함수가 들어가고 호환성때문에 문자열도 받을 수 있지만 추천하지 않는다고 한다. 2. [지연될 시간] 실행 전 대기시간으로 입력한 시간만큼 지연되었다가 실행되는 것이.. CentOS7 Node.js 설치 CentOS docker 이미지를 컨테이너로 생성해서 Node.js를 설치했다. Node.js를 설치하면 npm도 같이 설치된다. (npm : Node Package Manager로 기본 패키지 관리자) 1. yum update하기 yum -y update (최고권한으로 설치할 경우, sudo yum -y update) 2. NodeSource(회사)는 효율적인 노드 서비스를 제공하고 리눅스용 Node.js저장소가 있는지 확인한다. CentOs서버에서 NodeSource저장소를 사용해 Node.js와 npm을 설치하는데 도움이 된다. setup_12.x는 12버전을 설치할 경우이다. 예를들어 8, 10버전이 필요할 경우에는 setup_8.x 혹은 setup_10.x로 넣고 명령어를 실행하면 된다! cur.. PayloadTooLargeError: request entity too large Postman에서 API테스트 하면서 발생한 문제이다. POST인 API를 호출하기 위해서 body에 request json내용을 넣고 실행했는데, request가 너무 크다는 오류가 났다. 결론적으로 말하면! body-parser가 읽을 수 있도록 허용한 데이터의 크기보다 컸을 때 파싱을 할 수 없어서 나타난 문제이다. 현재 Node.js에서 express프레임워크를 사용하고 있는데, 이때 request의 내용을 받아서 파싱하고, router에서 받은 데이터를 사용할 수 있도록 body-parser를 쓰는데, 파싱할 수 있는 데이터의 크기보다 커서 오류가 난것이다. 이렇게 옵션을 추가하면 허용 데이터 크기를 늘려서 에러를 해결 할 수 있다!! const express = require('express'.. =>{} / node.js => / node.js 화살표 함수 node.js 관련해서 검색하다 보면 이런 형태의 함수를 많이 볼 수 있다. 이것은 화살표 함수라고 불리운다! (2015년 이후부터 자바스크립트 문법들이 업그레이드 되면서 새로운 문법들이 생겨났다) var sum= ( x , y ) =>{ return x+y ; } var sum2 = ( x , y ) => ( x+y ) ; var sum3 = ( x, y ) => x+y ; function ( x , y ) { return x+y ; } 위의 함수들은 모두 같은 의미를 가진 함수들이다! 즉, 화살표 함수는 function을 선언하는 대신 =>기호로 선언해서 사용하는 것이다 화살표함수로 표현한 함수같은 경우, var sum이라는 변수에 대입했는데, 이렇게 사용하면 재사용을 할 수 있다! 그리고, sum2.. node.js git ignore .gitignore node.js 프로젝트를 git에 올릴 때 git에서 제외할 파일들을 설정하는 파일이다. node_modules는 많은 용량을 차지하고, package.json만 있으면 해당 node.js (express )프로젝트에서 필요한 패키지를 다운받아서 셋팅할 수 있다. 아래 코드를 .gitignore파일에 복사&붙여넣기 하면 된다. # Logs logs *.log npm-debug.log* yarn-debug.log* yarn-error.log* lerna-debug.log* .pnpm-debug.log* # Diagnostic reports (https://nodejs.org/api/report.html) report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json # Runt.. 이전 1 2 다음