728x90
1. 프로젝트 생성
가. npm으로 프로젝트 시작 및 express, ejs 설치
1) npm이란?
Node Packaged Manager의 약자로
Node.js로 만들어진 pakage(module)을 관리해주는 툴
2) 설치
cd 프로젝트경로
npm init -y #프로젝트 시작 명령, -y 옵션: package.json 기본 값으로 생성
npm i express ejs # express ejs 설치
나. app.js 생성
1) app.js 생성
touch app.js
2) app.js 작성
const express = require("express");
const app = express();
const PORT = 8000;
// 탬플릿과 탬플릿 엔진 설정
app.set("view engine", "ejs");
app.use("/views", express.static(__dirname + "/views"));
//body-parser
app.use(express.urlencoded({ extended: true }));
app.use(express.json());
//Routing(경로 설정)
app.get("/", function (req, res) {
res.render("dynamic");
});
//호출
app.listen(PORT, function () {
console.log(`웹 서버 실행!`);
console.log(`http://localhost:${PORT}`);
});
3) body-parser 란?
데이터 처리를 쉽게해주는 '라이브러리'이다.
post로 정보 전송시 req.body로 받을 수 있도록 한다.
express 버전4부터는 내장된 라이브러리로 별도 설치가 필요없다.
다. index.ejs 생성
views 폴더 안에 작성해준다.
라. .gitignore 작성
커밋 시 너무 변경사항이 많아지므로 아래와 같이 작성해준다.
/node_modules
package-lock.json
마. nodemone 설치
저장 할 때마다 서버를 껐다 켜야한다는 불편함이 있어서
변경사항이 있을 때마다 자동으로 재접속해주는 nodemone 패키지를 설치한다.
npm i nodemon
npm i -g nodemon #전역설치, 맥이라 sudo 사용했다.
728x90
'백앤드 > Node.js' 카테고리의 다른 글
[포스코x코딩온] 웹개발자 입문 과정 5주차 | 비동기 HTTP 통신 종류 (ajax, axios, fetch) (0) | 2023.04.01 |
---|---|
[포스코x코딩온] 웹개발자 입문 과정 5주차 | form 전송(get/post) (0) | 2023.03.31 |
[포스코x코딩온] 웹개발자 입문 과정 5주차 | async await (0) | 2023.03.29 |
[포스코x코딩온] 웹개발자 입문 과정 5주차 | 콜백함수, Promise (0) | 2023.03.28 |
[포스코x코딩온] 웹개발자 입문 과정 3주차 회고-04 | 백앤드 기초 (0) | 2023.03.17 |