node.js |环回,处理直接文件上传

node.js | loopback, handling direct file upload

客户端是否可以通过API直接将文件推送到我们的服务器上?如何通过 API 再次将文件从我们的服务器推送到另一个服务器?

现在我的服务器出故障并通过 'get' 从位置抓取文件。这不是最有效的潜力,并且有理由相信我将无法通过 get 直接访问所有文件。

要发送,您可以使用 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);
});

为了在节点中接收文件,你可以使用类似 express with 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 
})