Javascript Express Nodejs-如何将request.files传递给另一个POST请求
我有一个页面,用户上传文件并传递给节点API,节点API执行一些操作,如数据库插入,最后必须将文件发送到另一个节点RESTAPI进行病毒检查 在第一次API调用中,我可以看到Javascript Express Nodejs-如何将request.files传递给另一个POST请求,javascript,node.js,Javascript,Node.js,我有一个页面,用户上传文件并传递给节点API,节点API执行一些操作,如数据库插入,最后必须将文件发送到另一个节点RESTAPI进行病毒检查 在第一次API调用中,我可以看到req.files中的文件内容和属性,但正在努力使用request.post将req.files传递到另一个节点API URL var uploadFile= function(req, res) { var files = req.files.upload; Async.series( [
req.files
中的文件内容和属性,但正在努力使用request.post
将req.files
传递到另一个节点API URL
var uploadFile= function(req, res) {
var files = req.files.upload;
Async.series(
[ function (callback) {..},
function (callback){viruscheck(files,callback);}
....
//viruscheck method
var viruscheck= function(files, callback) {
request.post({url: "http://loclahost:1980/viruscheck/upload.json",
qs: {
..
},
headers: {'enctype-type': 'multipart/form-data'},
form:{
upload:files
}
},function(error, response, body){
if(error) {
console.log(error);
callback(error)
} else {
console.log(response.statusCode, body);
callback()
}
});
}
在API中,我看到的是正文中的文件内容,而不是req.files
如何在第二次API调用中获取request.files
中的文件?使用:
headers: {'Content-Type': 'multipart/form-data'},
而不是:
headers: {'enctype-type': 'multipart/form-data'},
enctype是一种HTML表单
有关更多信息,请参见此答案:
我尝试过使用content type,但仍然可以在正文中看到文件内容。以下是viruscheck服务器主体上的请求对象约束:{upload[]..}主体:true,长度:未定义,读取:[Function],文件:{},路由:route{path:'/upload(:ext)',堆栈:[[object]],方法:{post:true}}您正在将var文件设置为req.files.upload。这是什么?缓冲区?应该改为设置为req.files吗?它是缓冲区。正如我尝试使用req.files时所建议的,header也设置为“contet type”:“multipart/form data”,但我仍然在请求体中看到文件,而不是req.files。