Nodejs index.js 예시
본문 바로가기

Backend/node.js

Nodejs index.js 예시

1. ejs를 사용할경우

index.js

const express = require("express");
const cors = require("cors");
const app = express();
app.set("view engine", "ejs");

require("dotenv").config();
const {port} = ensureEnv('PORT')

app.use(cors());
// app.use(cookieParser());
app.use(express.static("public"));
app.use(express.json({ limit: "50mb" }));
app.use(express.json());
app.use(express.urlencoded({ extended: false, limit: "50mb" }));
app.use(express.urlencoded({ extended: true }));

const router = express.Router();

// router.get("/", async function (req, res) {
//   res.render("index", {});
// });

app.use("/", router);

router.use("/connect/", require("./router/connect.js"));

app.get("*", (req, res) => {//get요청에 대해 설정한 경로외의 모든경로 처리
  return res.render("invalid", { message: "404" });//invalid.ejs(에러처리 페이지)로 넘어감
});

app.listen(port, () => {
  console.log(`The Express server is listening at PORT: ${port}`);
});

module.exports = app;

public폴더를 생성하여 css, js등의 파일을 넣고

views파일과 connect.ejs파일을 생성하여 html형식의 코드를 짠다.

http://localhost:port/connect/ 으로 이동할경우 conenct.ejs의 파일이 실행되어 웹브라우저에 보인다.

 

에러페이지를 위하여 app.get('*',...) 코드를 추가하였다. 만약 message를 ejs에서 사용하고싶으면 아래 포스팅을 참고한다.

https://dubaiyu.tistory.com/314

 

Nodejs ejs 문서내 include, if 사용하는방법 초간단

1. include 중복코드를 어떻게할까하다가 ejs include를 사용하기로하였다. 생각보다 엄청 간단한데 그냥 따로 ejs로 분리한다음에 원하는 ejs안에 include(경로)하면된다. 형식은 다음과 같다. 2. if문, for

dubaiyu.tistory.com

 

package.json

{
  "name": "proj",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "dev": "nodemon ./index.js",
    ...
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "cors": "^2.8.5",
    "dotenv": "^16.0.3",
    "ejs": "^3.1.9",
    "express": "^4.18.2",
    "express-validator": "^7.0.1",
    "nodemon": "^2.0.22",
    "validator": "^13.7.0"
  }
}

 

2. 프론트서버를 따로팔경우

반응형