Maison > interface Web > js tutoriel > Comment résoudre l'erreur « Entité de demande trop grande » dans Express.js ?

Comment résoudre l'erreur « Entité de demande trop grande » dans Express.js ?

Mary-Kate Olsen
Libérer: 2024-11-28 03:51:11
original
448 Les gens l'ont consulté

How to Resolve the

Erreur : entité de requête trop grande

Cette erreur se produit lorsqu'un corps de requête dépasse la limite de taille autorisée. Express fournit la méthode express.limit() pour définir cette limite. Cependant, il arrive parfois que la limite ne soit pas correctement appliquée.

Solution :

1. Définir la limite explicitement

Assurez-vous que express.limit() est appelé explicitement et placé avant d'autres middlewares susceptibles de modifier le corps de la requête, tels que express.json() ou express.urlencoded().

app.use(express.limit('50mb'));
Copier après la connexion

2. Mettre à jour Body Parser avec body-parser

Dans Express 4, le middleware body-parser doit être utilisé à la place de express.json() et express.urlencoded().

var bodyParser = require('body-parser');
app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded({limit: '50mb'}));
Copier après la connexion

3. Corriger temporairement le module

En tant que solution temporaire, vous pouvez modifier le module de corps brut et définir la limite manuellement. Ceci n'est pas recommandé, car il sera écrasé lors des mises à jour du module.

// In node_modules/express/node_modules/connect/node_modules/raw-body/index.js
limit = 52428800; // For 50mb
Copier après la connexion

4. Utiliser la dernière version d'Express

Dans Express v4.16.0 et versions ultérieures, la limite peut être définie sans utiliser explicitement body-parser.

app.use(express.json({limit: '50mb'}));
app.use(express.urlencoded({limit: '50mb'}));
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal