/*var multer? = require('multer');var upload = multer({ storage: storage });router.post('/', upload.single('file'), function(req, res, next) {????????console.log('文件',req.body.file);}*/而使用formidable來解析var formidable = require('formidable');var form = new formidable.IncomingForm();? ? //緩存路徑? ? form.uploadDir = "./temp";? ? form.keepExtensions = false;? ? //回調函數的files參數將會是一個file數組? ? form.multiples = true;? ? form.parse(req,function(err, fields, files){? ? ? ? //console.log('req',req);? ? ? ? //if(err) return next(err);? ? ? ? console.log(err,JSON.stringify(fields),files);????}打印出的數據為????null '{"file":"[object HTMLInputElement]"}' {}為什么會解析成files對象呢,求教大佬。html:<input type="file" /> <a href="javascript:void(0)">提交</a>var Input = document.querySelector("input"); var A = document.querySelector('a'); A.onclick = function(){ ? ? // 創建一個FormData對象,用來組裝一組用 XMLHttpRequest發送請求的鍵/值對 ? ? var fd = new FormData(); ? ? fd.enctype = "multipart/form-data"; ? ? fd.append('file', Input); ? ? // Ajax ? ? var request = new XMLHttpRequest(); ? ? request.open("POST", "/index",true); ? ? //request.setRequestHeader("Content-type","application/form-data"); ? ? request.send(fd); ? ? request.onreadystatechange = function(){ ? ? ? ? if(request.readyState === 4 & request.status === 200){ ? ? ? ? ? ? console.log("上傳成功"); ? ? ? ? ? ? var response = JSON.parse(request.responseText); ? ? ? ? ? ? console.log(response); ? ? ? ? } ? ? }}
- 1 回答
- 0 關注
- 1856 瀏覽
相關問題推薦
添加回答
舉報
0/150
提交
取消