Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

사고쳤어요

[Node.js] http-status-codes 사용해보기 본문

웹 풀스택

[Node.js] http-status-codes 사용해보기

kevinmj12 2025. 3. 12. 17:04

https://www.npmjs.com/package/http-status-codes

 

http-status-codes

Constants enumerating the HTTP status codes. Based on the Java Apache HttpStatus API.. Latest version: 2.3.0, last published: a year ago. Start using http-status-codes in your project by running `npm i http-status-codes`. There are 2888 other projects in t

www.npmjs.com

 

http-status-codes라는 모듈을 설치하여 사용해보자

설치 명령어는 다음과 같다.

npm install http-status-codes --save

 

그리고 공식 페이지에서 소개하는 예제는 다음과 같다.

import {
	ReasonPhrases,
	StatusCodes,
	getReasonPhrase,
	getStatusCode,
} from 'http-status-codes';

response
	.status(StatusCodes.OK)
	.send(ReasonPhrases.OK);

response
	.status(StatusCodes.INTERNAL_SERVER_ERROR)
	.send({
		error: getReasonPhrase(StatusCodes.INTERNAL_SERVER_ERROR)
	});

response
	.status(getStatusCode('Internal Server Error'))
	.send({
		error: 'Internal Server Error'
	});

response.status()에서 status() 내부에 200, 400, 404와 같이 숫자를 넣지 않고

StatusCodes.OK, StatusCodes.INTERNAL_SERVER_ERROR와 같은 값을 넣거나

getStatusCode()로 코드를 찾아 값을 넣는 모습을 볼 수 있다.

위 모듈을 사용하면 상황에 맞는 http status code를 매번 찾아볼 필요 없이 매핑시킬 수 있다.

 

const express = require("express");
const router = express.Router();
const conn = require("../mysql");
const { StatusCodes } = require("http-status-codes");

router.use(express.json());

router.post("/join", (req, res) => {
  const { email, password } = req.body;
  const sql = `INSERT INTO users (email, password) VALUES ?, ?`;
  const values = [email, password];

  conn.query(sql, values, (err, results) => {
    if (err) {
      return res.status(StatusCodes.BAD_GATEWAY).json({
        msg: `Error: ${err.code}`,
      });
    } else {
      res.status(StatusCodes.CREATED).json(results);
    }
  });
});

 

다음은 실제 활용 예시이다.

const { StatusCodes } = require("http-status-codes")를 추가해준 뒤

StatusCodes."상태"를 통해 편리하게 http status code를 전달해줄 수 있다.

 

위와 같이 편리하게 어떤 종류가 있는지도 볼 수 있다.