# [VSCODE에서 Node.js로 웹페이지 만들어보기3]

이효성·2023년 9월 27일

Node.js

목록 보기
3/3

[VSCODE에서 Node.js로 웹페이지 만들어보기3]

이전 글에서는 웹 서버의 라우팅 처리 방법을 알아보았고 이번 글에서는 이어서 Express에서 에러 처리 방법과 정적 파일 제공 방법에 대해서 알아보기로 하자

Express에서 에러 처리하기

2가지 방법

  • 1. 기본 에러처리

<방법1>
라우트에서 에러가 발생하면 익스프레스가 알아서 클라이언트로 500 에러 코드와 에러 정보를 전달해준다.

<방법2>
위의 그림과 같이 미들웨어의 3번째 콜백 인수 next를 이용해 에러 발생 코드와 정보를 전달해준다.

  • 2.에러 처리 핸들러 미들웨어 함수로 에러 처리

앱에서 발생한 모든 에러를 미들웨어 함수 한 군데서 처리 할 수 있다.
여기서 주의할 사항은 에러 처리 미들웨어 함수는 err, req, res, next 4개의 매개변수를 사용하는데 다른 app.use() 및 라우트 정의 후 마지막으로 정의해 주어야 한다.

Express에서 정적 파일 제공하기

  • 정적 파일 : 이미지 , CSS 파일 및 JavaScript 파일과 같이 서비스를 제공하는 동안 변경되지 않는 파일을 말한다.

    익스프레스의 미들웨어 모듈인 express, static() 함수를 사용하여 직접적인 제공을 시작할 수있다. 예를 들면, 다음과 같은 코드를 이용하여 public이라는 이름의 디렉터리에 포함된 이미지, css 파일 및 JavaScript 파일을 제공해 주게 된다.

    다음과 같이 /static 경로를 통해 public 디렉토리에 포함된 파일을 로드할 수 있다.


추가로 express.static 함수에 제공되는 경로는 node 프로세스가 실행되는 디렉터리에 대해 상대적이기 때문에 Express 앱을 다른 디렉터리에서 실행하는 경우에는 다음과 같이 제공을 원하는 디렉터리의 절대 경로를 사용하는 것이 더 안전한 방법이 될 수 있다.

이번엔 간다하게 에러 처리와 정적 파일 설정 방법에 대해 알아보았으며, 다음 글에서는 Json-server를 이용해서 CRUD 구현을 해보겠다.

profile
많이 알아보자 !

0개의 댓글