2017-02-21 3 views
4

J'utilise multer pour télécharger mes images et documents mais cette fois je veux restreindre le téléchargement si la taille de l'image est> 2mb. Comment puis-je trouver la taille du fichier du document? Jusqu'à présent, j'ai essayé comme ci-dessous, mais ne fonctionne pas.Comment trouver la taille du fichier dans Node.js?

var storage = multer.diskStorage({ 
     destination: function (req, file, callback) { 
     callback(null, common.upload.student); 
     }, 
     filename: function (req, file, callback) { 
     console.log(file.size+'!!!!!!!!!!!!!!')======>'Undefined' 
     var ext = ''; 
     var name = ''; 
     if (file.originalname) { 
      var p = file.originalname.lastIndexOf('.'); 
      ext = file.originalname.substring(p + 1); 
      var firstName = file.originalname.substring(0, p + 1); 
      name = Date.now() + '_' + firstName; 
      name += ext; 
     } 
     var filename = file.originalname; 
     uploadImage.push({ 'name': name }); 
     callback(null, name); 
    } 
}); 

Quelqu'un peut-il m'aider s'il vous plaît?

+0

comment vous appelez fonction 'filename' – brk

+0

Salut BRK, je ne suis pas sûr de cela, mais je suis en utilisant le rappel pour cela. – Daniel

Répondre

6
var fs = require("fs"); //Load the filesystem module 
var stats = fs.statSync("myfile.txt") 
var fileSizeInBytes = stats["size"] 
//Convert the file size to megabytes (optional) 
var fileSizeInMegabytes = fileSizeInBytes/1000000.0 

ou:

function getFilesizeInBytes(filename) { 
    var stats = fs.statSync(filename) 
    var fileSizeInBytes = stats["size"] 
    return fileSizeInBytes 
} 
+0

H Jamsam dois-je télécharger le fichier dans un dossier pour trouver la taille parce que, je veux télécharger seulement lorsque la taille est inférieure à 2mb – Daniel

+0

Voulez-vous dire que vous souhaitez vérifier la taille en frontend avant de télécharger le fichier? – Jameel

+0

Selon la documentation du module "fs", la classe d'état ne téléchargera pas le fichier comme je le pense: [fs] (https://nodejs.org/api/fs.html#fs_class_fs_stats) – Jameel