Maison > Article > interface Web > Comment corriger l'« Erreur : entité de demande trop grande » dans Express.js ?
Les utilisateurs d'Express peuvent rencontrer l'erreur « Erreur : entité de demande trop grande » lors de la gestion de charges utiles volumineuses. Ce problème survient lorsque la requête entrante dépasse la limite de taille configurée.
Pour résoudre ce problème, les utilisateurs peuvent ajuster la limite de taille de la requête à l'aide de l'app.use(express. limite(taille)) middleware. Dans l'exemple fourni, la limite est fixée à 100 000 000 octets.
Assurez-vous que l'en-tête Content-Length dans Fiddler correspond à la taille du tableau JSON publié. Dans ce cas, l'en-tête affiche une valeur de 1078702 octets, ce qui équivaut à 1,0787 mégaoctets.
Une solution possible consiste à utiliser app.use(express.bodyParser({limit : '50mb'})) au lieu de app.use(express.limit(size)). Il a été signalé que cette approche fonctionne pour certains utilisateurs.
Si les solutions ci-dessus échouent, un correctif temporaire peut être appliqué en modifiant directement le module raw-body. En ajoutant la limite = 52428800 ; à la ligne 10 de node_modules/express/node_modules/raw-body/index.js, la limite sera forcée à 50 mégaoctets. Notez qu'il s'agit d'une solution de contournement temporaire et non d'une solution permanente.
Pour une solution plus robuste, il est recommandé d'utiliser le module body-parser avec Express 4 ou version ultérieure. L'extrait de code suivant illustre comment configurer la limite de taille du corps :
const bodyParser = require('body-parser'); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({limit: '50mb'}));
Remarques supplémentaires :
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!