2017-04-03 119 views
0

我想从注册表单中获得的单个端点上传6个图像到azure blob。该代码展示了如何上传单个blob,但我需要同时上传多个blob。我该怎么做?我们如何使用nodejs将多个blob上传到azure

这里是我的代码:

app.post('/upload', function (req, res) { 
    //var dirname = require('path').dirname(__dirname); 
    //var dirname1 = require('path').dirname(dirname); 
    var filename = req.files[0].filename; 
    var path = req.files[0].path; 
    var type = req.files[0].mimetype; 
    var options = { 
    contentType: type, 
    metadata: { fileName: filename } 
    } 
    blobSvc.createBlockBlobFromLocalFile(containerName, filename, path, options, function (error, result, response) { 
    if (error != null) { 
     console.log('Azure Full Error: ', error) 
    } else { 
     console.log(result); 
     console.log(response); 
     var user = new User(); 
     user.name = req.body.name; 
     user.picture = 'https://yourblob.blob.core.windows.net/profile/' + result.name; 
     user.save(function (err) { 
     if (err) { 
      return res.json(err.message); 
     } 
     else { 
      return res.json({ User: user }); 
     } 
     }); 
    } 
    }); 
}); 
+1

难道你不能只是一次一个地在循环中上传它们吗? – powerc9000

回答

0

由于Azure Storage for node SDK基于RESTful API中,我们通过Put Blob实现上传功能。

SDK中没有这样的RESTful API或函数可供我们一次性将多个独立的Blob直接上传到Azure。

您可以通过循环上传文件来为自己实现此功能。

相关问题