2017-12-20 3 views
0

Ich versuche Datei mit Winkel jsWie senden Sie zusätzliche Parameter mit Upload.upload in angular js?

var requestData = { 
     url: "/file_upload", 
     data: {"name":"jack", file:file}, 
    }; 

Upload.upload(requestData); 

Dies ist, was mein Controller hat zu.

app.post("/file_upload", function(req, res){ 
    console.log(req.body.name); 
    res.send("uploading..."); 
}); 

Dies ist, was meine Route haben. Hier wird 'undefined' anstatt des Namens gedruckt.

Bitte helfen Sie mir.

Antwort

0

Sie können weitere Parameter im Feld data senden.

Dies ist, wie ich Upload-Funktion bin mit:

Upload.upload({ 
    url: url, 
    method: 'POST', 
    file: file, 
    data: {name:'Hello!'} // Here you can send JSON parameters 
}); 

Hoffe, es hilft.

EDIT

Dies ist, wie ich meine Datei bin Empfang auf Node.js Seite

Multer Middleware-Funktion

var uploader = multer({ 
    storage: multer.diskStorage({ 
     destination: function (req, file, next) { 
      next(null, '/path/to/final/file'); 
     }, 
     filename: function (req, file, next) { 
      next(null, 'finalFileName.csv'); 
     } 
    }), 
    limits: { 
     fieldNameSize: 100, 
     fileSize: 20000000, 
     files: 1, 
     fields: 5 
    } 
}).single('file'); 

Meine Route

server.post('/file_upload', function (req, res) { 
    uploader(req, res, function (err) { // call uploader middleware 
     if (err) { 
      throw err; 
     } 
     else if (req.file) { 
      console.log(req.file); 
      console.log(req.body.name); // I can use parameters 
      res.status(200).json('OK!').end(); 
     } 
     else { 
      res.status(424).json('Error !').end(); 
     } 
    }); 
}); 

Hoffe es hilft.

+0

immer noch es funktioniert nicht @Sparw –

+0

Was verwenden Sie, um die Datei oder die Server-Seite zu erhalten? – Sparw

+0

Knoten js (Express) und Paket ist multer .. Sie können es auf meiner Frage –

-1
Upload.upload({ 
    url: url, 
     method: "POST", 
     data: { 
      details: {name: jack}, 
      files: files 
     } 
}).then(function (success) { 
    console.log(success); 
}); 
Verwandte Themen