Express JS Server процесс curl запрос дважды - PullRequest
0 голосов
/ 09 октября 2018

Когда я отправляю запрос на мой сайт следующим образом:

curl -F data=@data http://server:port/path
{"error":"req.file undefined"}

, я получаю ответ для случая, когда req.file не определен.См. Мой код:

 var multer = require("multer");
 var storage = multer.diskStorage({
    //stuff
 })
 var upload = multer({ storage: storage })

 router.post('/path', upload.single("data"), function(req, res, next){ 
   console.log(req.file);

   if(!req.file){
     res.json({"error": "req.file undefined"});
     return;   
   }   
   //dostuff   
   res.json({"error": "hurray"}); 
 });

На моей стороне сервера все работает нормально, вывод:

undefined
POST /path 200 1.535 ms - 15
POST /path 200 1.535 ms - 15
POST /path - - ms - -
POST /path - - ms - -
{ fieldname: 'data',
  originalname: 'data.txt',
  encoding: '7bit',
  mimetype: 'text/plain',
  destination: 'path/my-uploads',
  filename: 'data-201899-1028283.txt',
  path: 'path/my-uploads/data-201899-1028283.txt',
  size: 38 
}

Итак, я вижу, что перед загрузкой файла console.log(req.file) logs undefined и что это то, что я получаю в качестве ответа на стороне моего клиента, но как мне этого избежать?Я использую multer 1.4.0, где onParseEnd и onFileUploadComplete с ограничением .

...