web-dev-qa-db-fra.com

express (utilisant multer) Erreur: Multipart: limite non trouvée, demande envoyée par POSTMAN

Remarque: uniquement lorsque j'utilise le formulaire de corps de données de formulaire dans Postman (qui est le formulaire que je dois utiliser parce que je veux envoyer des fichiers à côté des champs de texte), j'obtiens:

Error: Multipart: Boundary not found.

quand j'utilise x-www-form-urlencoded tout est ok. (bien sûr lorsque l'analyseur corporel est utilisé comme middleware)

Ceci est le contenu de la demande: (fait par Postman)

POST /test HTTP/1.1
Host: localhost:3000
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
Cache-Control: no-cache
Postman-Token: 61089a44-0b87-0530-ca03-a24374786bd1

------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="test"

a simple Word
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="data"

good
------WebKitFormBoundary7MA4YWxkTrZu0gW--

index.js:

var express = require('express');
var app = express();

var multer = require('multer');
var upload = multer();

app.post('/test', upload.array(), function (req, res, next) {
    console.log(req.body.test);
    console.log(req.body);
});

app.listen(3000, function () {
    console.log('app started');
});

Merci d'avance.

7
user9150719

J'ai trouvé la solution. Je n'avais qu'à empêcher Postman d'envoyer un Content-Type en-tête. Je viens donc de le supprimer des en-têtes de demande.

Peut-être que cela aide quelqu'un.

24
user9150719