>웹 프론트엔드 >JS 튜토리얼 >Express.js에서 \'요청 엔터티가 너무 큼\' 오류를 해결하는 방법은 무엇입니까?

Express.js에서 \'요청 엔터티가 너무 큼\' 오류를 해결하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-28 03:51:11449검색

How to Resolve the

오류: 요청 엔터티가 너무 큼

이 오류는 요청 본문이 허용 가능한 크기 제한을 초과할 때 발생합니다. Express는 이 제한을 설정하기 위해 express.limit() 메서드를 제공합니다. 그러나 제한이 올바르게 적용되지 않는 경우도 있습니다.

해결책:

1. 명시적으로 제한 설정

express.limit()가 명시적으로 호출되고 express.json() 또는 express.urlencoded()와 같이 요청 본문을 변경할 수 있는 다른 미들웨어 앞에 배치되는지 확인하세요.

app.use(express.limit('50mb'));

2. body-parser로 Body Parser 업데이트

Express 4에서는 express.json() 및 express.urlencoded() 대신 body-parser 미들웨어를 사용해야 합니다.

var bodyParser = require('body-parser');
app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded({limit: '50mb'}));

3. 임시로 모듈 패치

임시 해결책으로 원시 본문 모듈을 편집하고 제한을 수동으로 설정할 수 있습니다. 모듈 업데이트 중에 덮어쓰게 되므로 권장하지 않습니다.

// In node_modules/express/node_modules/connect/node_modules/raw-body/index.js
limit = 52428800; // For 50mb

4. 최신 Express 버전 사용

Express v4.16.0 이상에서는 body-parser를 명시적으로 사용하지 않고도 제한을 설정할 수 있습니다.

app.use(express.json({limit: '50mb'}));
app.use(express.urlencoded({limit: '50mb'}));

위 내용은 Express.js에서 \'요청 엔터티가 너무 큼\' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.