현재 작업중인 node와 npm 버젼입니다.
% node --version
v20.6.1
% npm -- version
{
loc8r: '0.0.0',
npm: '9.8.1',
node: '20.6.1',
acorn: '8.10.0',
ada: '2.6.0',
ares: '1.19.1',
base64: '0.5.0',
brotli: '1.1.0',
cjs_module_lexer: '1.2.2',
cldr: '43.1',
icu: '73.2',
llhttp: '8.1.1',
modules: '115',
napi: '9',
nghttp2: '1.56.0',
openssl: '3.1.2',
simdutf: '3.2.17',
tz: '2023c',
undici: '5.23.0',
unicode: '15.0',
uv: '1.46.0',
uvwasi: '0.0.18',
v8: '11.3.244.8-node.14',
zlib: '1.2.11'
}
작업 디렉토리를 일부 변경 및 컨트롤러 파일 변경 후 “npm start” 하였지만 에러가 발생하며 실행에 실패했습니다.
아래는 에러 로그 전문입니다.
% npm start
> loc8r@0.0.0 start
> node ./bin/www
node:internal/modules/cjs/loader:1051
throw err;
^
Error: Cannot find module 'http-errors'
Require stack:
- /Users/yungchannelforyou/Desktop/src/app.js
- /Users/yungchannelforyou/Desktop/src/bin/www
at Module._resolveFilename (node:internal/modules/cjs/loader:1048:15)
at Module._load (node:internal/modules/cjs/loader:901:27)
at Module.require (node:internal/modules/cjs/loader:1115:19)
at require (node:internal/modules/helpers:130:18)
at Object.<anonymous> (/Users/yungchannelforyou/Desktop/src/app.js:1:19)
at Module._compile (node:internal/modules/cjs/loader:1241:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1295:10)
at Module.load (node:internal/modules/cjs/loader:1091:32)
at Module._load (node:internal/modules/cjs/loader:938:12)
at Module.require (node:internal/modules/cjs/loader:1115:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/Users/yungchannelforyou/Desktop/src/app.js',
'/Users/yungchannelforyou/Desktop/src/bin/www'
]
}
Node.js v20.6.1
http-errors 패키지가 모듈에 없어서 이다.
아래는 http-errors 설치 명령어 이다
npm install http-errors
‘http-errors’는 Node.js 웹 애플리케이션에서 HTTP 오류를 생성하고 관리하기 위한 유용한 패키지 중 하나입니다. 이 패키지를 사용하면 HTTP 요청 처리 중에 오류를 생성하고 해당 오류를 클라이언트에게 적절한 상태 코드와 함께 응답으로 보낼 수 있습니다. 이것은 웹 애플리케이션을 개발하고 디버그하는 데 도움이 되는 도구 중 하나입니다.
주요 기능 및 용도:
HTTP 오류 생성: ‘http-errors’를 사용하면 여러 가지 HTTP 오류를 간단하게 생성할 수 있습니다. 예를 들어, 404 Not Found, 500 Internal Server Error 등의 오류를 생성할 수 있습니다.
오류 응답 생성: 생성한 오류를 적절한 HTTP 응답으로 변환할 수 있습니다. 이렇게 하면 클라이언트에게 오류 메시지와 함께 올바른 HTTP 상태 코드를 포함하는 응답을 보낼 수 있습니다.
사용자 정의 오류: 필요에 따라 사용자 정의 오류를 생성하고 관리할 수 있습니다. 이를 통해 애플리케이션에서 고유한 오류 유형을 정의하고 처리할 수 있습니다.
Express 및 다른 웹 프레임워크와 통합: ‘http-errors’는 주로 Express.js와 함께 사용되지만 다른 Node.js 웹 프레임워크와도 통합할 수 있습니다.
‘http-errors’ 패키지를 사용하면 웹 애플리케이션에서 오류 처리를 더욱 효과적으로 수행할 수 있으며 클라이언트에게 명확하고 정보-rich한 오류 메시지를 제공할 수 있습니다. 이것은 사용자 경험을 향상시키고 디버깅을 더 쉽게 만드는 데 도움이 됩니다.
댓글