Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Express Nodejs-如何将request.files传递给另一个POST请求_Javascript_Node.js - Fatal编程技术网

Javascript Express Nodejs-如何将request.files传递给另一个POST请求

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( [

我有一个页面,用户上传文件并传递给节点API,节点API执行一些操作,如数据库插入,最后必须将文件发送到另一个节点RESTAPI进行病毒检查

在第一次API调用中,我可以看到
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。