반응형

Express 3

[NodeJS] PayloadTooLargeError: request entity too large

express에 editor에서 전달된 정보를 전달하다 보니 위와 같은 오류가 발생하였습니다. 이는 request의 payload (Post의 request body) 내용을 파싱 할 때 발생하는 에러입니다. request body를 parsing하는 기본 값은 100kb이므로 이상의 데이터에 대해서는 위와 같이 오류를 발생하게 됩니다. 가장 베스튼느 100kb 이하로 통신을 하는 게 좋겠지만, 만약 상황이 여의치 않은 경우 해당 limit를 풀어주어야 합니다. 위와 같이 limit를 20mb로 해주면 request body의 최대 제한 용량은 20MB로 변경되게 됩니다.

[Express] 파일 다운로드

res.download(path [, filename] [, options] [, fn]) path : 다운로드할 파일의 경로 filename : 다운로드 받을 파일 이름 options : 다운로드 설정 fn : callback 처리 사용방법 const express = require('express'); const app = express(); /** * 첨부파일 다운로드 */ app.get('/api/file/download', async(req, res) => { const filepath = "/filepath/filename.txt" const filename = "downfile.txt"; if(fs.existsSync(filepath)){ res.download(filepath, filena..

[File] 웹서버에 정적 파일 접근 기능 추가하기

node는 기본적으로 동적 파일별로 접근을 선언해서 사용합니다. 때문에 정적 파일인, 이미지 파일(jpg, png, gif, 등)나 스크립트 파일(js) 등 정적 파일에 대해서 일일이 선언해서 사용하는 건 뭔가 불필요한 작업으로 보입니다. 이를 해소하기 위해서 express라는 미들웨어 함수를 사용하게 됩니다. 1. express 설치 > npm i express --save 2. 서버 스크립트 내 express 사용 추가 let express = require('express'); let app = express(); ... app.use(express.static('public'); app.use(express.static('files'); 이렇게 public이라는 폴더나 files라는 폴더를 선언해..

반응형