将文件从angular应用程序上传到azure函数,然后继续保存到Blob存储

时间:2019-01-31 22:53:29

标签: node.js azure-storage azure-functions azure-storage-blobs

我想将图像上传到azure函数,并将其持久保存在azure blob存储中,但是我找不到任何有关如何执行此操作的好文章。

SOme帖子说不可能这样做,因为节点天蓝色函数存在多部分问题。

我不希望我的客户端应用知道使用哪种存储机制,所以我不想使用azure-storage-node客户端库,因为我们将被锁定使用。

我尝试了以下代码:

const upload = multer({ storage: multer.memoryStorage() });

module.exports = function(context: Context, req: any) {
  upload.any()(req, {} as any, function(err: any) {
    context.log('here we are');
    if (err) {
      throw err;
    }

    context.log(req.body);
    context.log(req);
    console.log(req.file);
    context.log(req.files);
    context.done(undefined, context);
  });

但是req.files是未定义的,我不得不将内容类型设置为application/octet-stream,否则我得到了req.pipe is not a function

如何从azure函数将req.files放入azure存储中?

1 个答案:

答案 0 :(得分:1)

这里是a sample GIT project,它使用@azure/storage-blob SDK将blob添加到Azure中。听起来好像您不想使用SDK,所以您可以查看SDK源代码并获取所需的代码。