ExpressJS 从 FormData 获取文件
ExpressJS get file from FormData
我是ExpressJS
的新蜜蜂,
我想从javascript
上传一个file
和一些data
,使用AJAX post
作为FormData object
,表达js routes
,保存文件在服务器中。我可以从前端 post,但无法从服务器端检索数据。
以下是我试过的代码片段:
AJAX post 来自客户端代码片段:
var files = [];
$('#upload').on('change',function(){
var form_data = new FormData();
form_data.append('file_uplaoded',$('#upload')[0].files[0]);
form_data.append('name1',"10000900055");
form_data.append('name2',"10000900044");
form_data.append('name3',"10000900033");
form_data.append('name4',"10000900022");
form_data.append('name5',"10000900011");
console.log(form_data);
$.ajax({
type: "POST",
url: '/ulploadfile',
data: form_data,
cache: false,
processData: false,
contentType: false,
success: function(data){
alert('success');
}
// dataType: 'json',
// contentType: "application/json; charset=utf-8"
}).done(function(data) {
// alert('success1');
});
});
服务器端代码片段:
router.post('/ulploadfile', function(req, res, next) {
var body = '';
try {
req.on('data', function (data) {
body += data;
});
req.on('end', function () {
var post = qs.parse(body);
console.log(post);
res.send("UPLOADING FILE RESPONSE");
});
} catch (e) {
console.log(e);
res.send("UPLOADING FILE RESPONSE ERRPR");
} finally {
}
});
更新
输出截图
所以我想知道如何从后端的请求对象中检索数据 post。我想在不使用任何其他包的情况下做到这一点。
非常感谢您的帮助和建议。
我是ExpressJS
的新蜜蜂,
我想从javascript
上传一个file
和一些data
,使用AJAX post
作为FormData object
,表达js routes
,保存文件在服务器中。我可以从前端 post,但无法从服务器端检索数据。
以下是我试过的代码片段:
AJAX post 来自客户端代码片段:
var files = [];
$('#upload').on('change',function(){
var form_data = new FormData();
form_data.append('file_uplaoded',$('#upload')[0].files[0]);
form_data.append('name1',"10000900055");
form_data.append('name2',"10000900044");
form_data.append('name3',"10000900033");
form_data.append('name4',"10000900022");
form_data.append('name5',"10000900011");
console.log(form_data);
$.ajax({
type: "POST",
url: '/ulploadfile',
data: form_data,
cache: false,
processData: false,
contentType: false,
success: function(data){
alert('success');
}
// dataType: 'json',
// contentType: "application/json; charset=utf-8"
}).done(function(data) {
// alert('success1');
});
});
服务器端代码片段:
router.post('/ulploadfile', function(req, res, next) {
var body = '';
try {
req.on('data', function (data) {
body += data;
});
req.on('end', function () {
var post = qs.parse(body);
console.log(post);
res.send("UPLOADING FILE RESPONSE");
});
} catch (e) {
console.log(e);
res.send("UPLOADING FILE RESPONSE ERRPR");
} finally {
}
});
更新
输出截图
所以我想知道如何从后端的请求对象中检索数据 post。我想在不使用任何其他包的情况下做到这一点。
非常感谢您的帮助和建议。