전체 글
-
npm으로 제 3자 패키지 사용하기 | 서버를 자동으로 재시작하는 nodemon 설치하기Node.js 2023. 12. 4. 16:30
모든 패키지를 직접 제작 및 모듈화해서 사용할 수는 없다. node의 방대한 생태계를 사용하기 위해 install 명령어를 쓸 수 있다. npm install {패키지명} {옵션} 어떤 패키지가 있는지 알기 위해서는 다양한 강의, 경험들이 쌓여야 한다. 오늘은 서버를 자동으로 재시작해주는 nodemon을 설치한다. 이전까지는 js 파일을 수정한 뒤, 이를 확인하려면 서버를 끄고 다시 시작하는 일련의 과정이 필요했다. 이를 nodemon이 간편화해준다. nodemon: 자동재시작 https://www.npmjs.com/package/nodemon nodemon Simple monitor script for use during development of a Node.js app.. Latest version..
-
npm 패키지 설정하기Node.js 2023. 12. 4. 15:39
1. npm : node package manager 2. npm 패키지 설정하기 터미널에서 대상 폴더로 이동해 다음을 입력한다. npm init 패키지묭, 버전, 설명 등 프로젝트의 기본정보들을 묻는다. 괄호 안에 있는 것들은 npm이 자동으로 설정한 기본값들이다. 설정을 완료하면 다음과 같은 json 파일이 생성된다. 이 중 scripts에서 터미널에서 쓸 수 있는 npm 명령어를 추가할 수 있다. 현재는 특별한 기능이 없는 test 코드가 들어가 있다. "start"를 추가해 node 서버를 시작하는 명령어를 만들어보자. "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "node app.js" }, 이제 터미널..
-
Node.js] 모듈 시스템 사용하기Node.js 2023. 12. 4. 15:04
다른 파일에서 사용할 수 있는 모듈을 직접 만들어 노드에 등록할 수 있다. 먼저 서버를 구동하는 파일을 깔끔하게 만들어보자. //app.js const http = require("http"); const server = http.createServer((req,res) => {}); server.listen(3000); 이제 이 파일은 서버를 시동하기만 하고 아무 기능이 없다. 화살표 함수 내에 기존에 있던 내용들은 url 확인 등 라우팅 로직을 포함하는 routes.js 파일로 만들어보자. //routes.js const fs = require("fs"); const requestHandler = (req, res) => { const url = req.url; const method = req.me..
-
Node.js | javascript] 이벤트 기반 코드 실행 | Event-DrivenNode.js 2023. 12. 4. 13:39
자바스크립트 코드는 작성된 순서대로 실행되지 않는다. 이벤트 기반 코드 실행? 이벤트가 발생할 때 미리 지정해둔 작업을 수행하는 방식 이벤트 예시 : 클릭, 네트워크 요청 등 이전에 작성했던 코드를 잠시 보자 if (url === "/message" && method === "POST") { const body = []; req.on("data", (chunk) => { console.log(chunk); body.push(chunk); }); req.on("end", () => { const parsedBody = Buffer.concat(body).toString(); // console.log(parsedBody); const message = parsedBody.split('=')[1]; fs.w..
-
웹용 무료 스케치업의 화면 구성스케치업 2023. 12. 4. 10:17
회사에서 스케치업을 배우면 좋겠다고 한다. 주요 기능을 나중에 직접 알려주신다고 했는데 마침 오늘 출근해서 딱히 할 일도 없어서 스케치업 개요 강의를 들어봤다. 1. SketchUp의 정의 및 화면 구성 1.1 스케치업이란? 아주 쉬운 3D 모델링 프로그램 간편한 화면 구성으로 누구나 쉽게 모델링할 수 있다는 강점 1.2 스케치업 화면 구성 도구상자 : Tool bar. 자주 사용하는 명령어를 아이콘으로 모아둔 곳 작업영역 : Drawing Area, Working Space. 3차원의 도화지. 트레이 : 디폴트 트레이, 명령어의 기본적인 속성값을 비슷한 성격으로 모아둔 곳 치수입력 창 : Value Control Box. 원하는 값을 정확하게 입력하고자 할 때 사용 상태표시줄 : Status Bar. ..
-
Node.js] 라우터 요청 : url 루트의 요청에 따라 기능이 달라지는 간단한 서버Node.js 2023. 12. 1. 14:38
1. 라우터 기본 구조 만들기 const http = require("http"); const server = http.createServer((req, res) => { const url = req.url; // url 값을 변수에 저장 if (url === "/") { // url에 따라 다른 응답을 보내도록 조건 설정 res.write(""); res.write(""); res.write( 'Send' ); res.write(""); return res.end(); } res.setHeader("Content-type", "text/html"); res.write(""); res.write(""); res.write("Hello from my Node.js Server!"); res.write(""..
-
Node.js] 서버의 요청 및 응답 확인하기Node.js 2023. 11. 30. 15:51
1. 서버의 요청 const http = require("http"); const server = http.createServer((req, res) => { console.log( "req.url: " + req.url, "req.method: " + req.method, "req.headers:", req.headers ); }); server.listen(3000); 노드 서버는 서버의 요청을 자동으로 객체화한다. req로 들어온 객체를 보면 이미 객체 내에 다양한 메서드가 존재한다. url : 포트 뒤에 따라오는 나머지 주소를 반환 method : get, post 등 접근 방식을 반환 headers: 브라우저의 정보를 담은 객체를 반환 노드로 위 앱을 실행시켜 보면 url : localhost:..
-
Node.js] 서버 만들기 : http 모듈, require, listenNode.js 2023. 11. 29. 13:10
노드는 다양한 기능을 기본적으로 제공한다. 이런 기능들을 모아둔 객체를 모듈이라고 한다. 그중 http 모듈을 이용해 오늘 서버를 만들어본다. 1. http 모듈 불러오기 const http = require("http"); require 특정 경로의 파일을 불러오는 키워드 파일의 절대 또는 상대경로를 파라미터로 받는다. 이 때 파일의 확장자는 자동으로 js가 된다. 경로를 생략하면 글로벌 모듈을 수색 2. http 모듈로 서버 생성하기 const server = http.createServer(rqListener); http.createServer 서버를 생성하는 메서드 모든 요청을 매개변수로 들어오는 콜백함수로 보낸다. 만들어진 서버는 변수(여기서는 server)에 저장해 계속 사용한다. 3. 서버의..