我有一个 node.js 服务,它应该从 azure 下载文件,处理它,当它完成时 - 将它移动到同一个容器内的“完成”子文件夹。我已经在文档中挖掘了一个多小时,但找不到任何复制 blob 或重命名它的方法,因为如果我从一开始将它创建为 done/blob-name,它将在子文件夹中直观地呈现它,因此重命名也可以解决这个问题(我知道它是如何工作的,这对我来说很好,我通过忽略所有包含 done/ 在他们的名字中的那些来过滤 blob)。唯一足够接近的是 startCopyFromURL,它是“blob”类的成员,但我不知道如何使用它 - 因为我只提供了一个源,但没有提供目标......我所要求的只是一个简单的功能copyBlob(sourceBlobURL, dstBlobUrl) -.-奇怪的是,Azure 门户没有提供任何复制/重命名选项,但是有一种叫做“存储资源管理器”的东西(可以通过 azure 门户访问),据我所知 - 它是一个 GUI,可以对 blob 进行高级操作,包括复制操作和子文件夹管理。因此,如果有一个 GUI 可以做到这一点,那么必须有一种编程方式......我使用(有点)新的 v10 sdk(这里),只需要我的脚本中的 @azure/storage-blob 部分。非常感谢您的帮助!更新:我确实找到了对名为“startCopyAsync”的方法的引用,但我可以在网上找到的所有示例都是从 sdks 到不同语言(例如 c#),并且已有 1-2 年的历史,而新的 JS sdk 是官方的主要 sdk仅在几周前(19 年 7 月)才用于 js。在新的 JS sdk 中找不到任何提及此功能的内容。
2 回答
![?](http://img1.sycdn.imooc.com/5458626a0001503602200220-100-100.jpg)
HUH函数
TA贡献1836条经验 获得超4个赞
您可以使用startCopyFromURL
,正如您自己假设的那样。源是第一个参数,目标是用于调用此方法的 Blob 对象。所以,流程是这样的:
创建目标 Blob 对象(空,包括您需要的所有子文件夹,例如
done
)调用
startCopyFromURL
它提供源的 URL等待承诺解决。
可以在此处找到非 JavaScript 示例。
添加回答
举报
0/150
提交
取消