文件上傳

var express=require('express');//加載experss模塊
var app=express();
var fs=require('fs');
var multer=require('multer');
var upload=multer({dest:__dirname+'/public/'});
app.post('/file_upload',upload.single('file'),function(req,res){//表單中名file單個文件
    var file=__dirname+"/"+req.file.originalname;//獲取被上傳文件名
    console.log(file);
    fs.readFile(req.file.path,function (err,data) {
       fs.writeFile(file,data,function (err) {
           if(err){
               console.error(err);
           }else{
               response={
                   message:'File upload successfully',
                   filename:req.file.originalname
               };
           }
           console.log(response);
           res.end(JSON.stringify(response));
       }) ;
    });
});

 

var multer=require('multer');express

var upload=multer({dest:__dirname+'/public/'});//也可指定storage:__dirname+'/public/npm

npm install multerapp

multer允許傳入一個配置對象,dest/storage屬性:指定上傳文件的保存目錄,若是不提供配置對象,文件將保存到內存而永遠不會被寫入硬盤。post

.single(filename)參數指定文件名的單文件上傳,文件存儲在req.fileui

app.post('/file_upload',upload.single('file'),function(req,res){//表單中名file單個文件 spa

var file=__dirname+"/"+req.file.originalname;//獲取被上傳文件名string

.array(filedname[,maxCount])參數指定文件名的多文件上傳,maxCount可選,超出拋異常it

.fileds(files)允許通過filed參數指定的文件列表上傳 filed是一個數組io

.any允許傳入任何文件console

其餘異常處理,文件過濾,限制文件上傳

相關文章
相關標籤/搜索