客户端是否可以通过API直接将文件推送到我们的服务器上?如何通过API再次将文件从我们的服务器推送到另一个服务器?
现在我的服务器出去通过'get'从位置抓取文件。这不是最有效的潜力,并且有理由相信我将无法通过get直接访问所有文件。
答案 0 :(得分:1)
要发送内容,您可以使用request
模块的form feature上传文件。
var formData = {
my_file: fs.createReadStream(__dirname + '/unicycle.jpg'),
};
request.post({url:'http://service.com/upload', formData: formData}, function optionalCallback(err, httpResponse, body) {
if (err) {
return console.error('upload failed:', err);
}
console.log('Upload successful! Server responded with:', body);
});
要接收节点中的文件,您可以使用multer表达的快捷方式:
var multer = require('multer')
var upload = multer({ dest: 'uploads/' })
app.post('/profile', upload.single('avatar'), function (req, res, next) {
// req.file is the `avatar` file
// req.body will hold the text fields, if there were any
})