node.js - 如何在 azure blob 服务方法上调用 await?
问题描述
我正在研究 blob 的重命名功能,因为无法重命名 blob 我正在删除 blob 并使用 rename 创建新文件。但是由于异步性质,有时 blob 不会被删除并且新 blob 会被创建,所以我想写两个 blob 服务的异步/等待。如何实现这一点,因为没有回调它会给出错误?
module.rename=function(req,rez){
return new Promise((resolve, reject) => {
let results = await genericHandler.getUserSubscMapping();
if (contentType != 'folder') {
blobService.startCopyBlob(storageuri, containerName, blobName, err => {
if (err) {
return res.status(500).send("Error while renaming the blob");
} else {
blobService.deleteBlobIfExists(containerName, oldFilePath, (err) => {
if (err) {
console.log(err);
reject(err)
return res.status(400).send(err);
} else {
res.status(200).json({
status: 'success'
});
}
});
}
});
}
});
}
试过的代码:
let res1 = await blobService.startCopyBlob(storageuri, containerName, blobName);//////error : Required argument callback for function startCopyBlob is not defined
我使用回调的旧代码工作正常但是我想先获取这个结果然后执行下一个操作,搜索 blob 服务上的异步/等待,但似乎没有找到任何文章。
解决方案
推荐阅读
- ruby - 这 2 行代码实际上是做什么的?
- admob - 如何在 AdClick 后停止展示广告?哪个广告侦听器更适合此目的,onAdClicked 还是 onAdLeftApplication?
- php - 在codeigniter中发布删除id
- python - Python OpenCV - 增加视频 fps
- python-3.x - 如何在 Python 3 中直接播放音频文件?
- c# - 在 Active Directory 中存储(获取和设置)数据,例如连接字符串
- firemonkey - Delphi Firemonkey LockBox3 AES-CBC,PC和Android结果不同?
- json - 将 PDF 中的文本提取为 JSON 或 XML 或其他什么?
- amazon-web-services - Google Firebase 与 Amazon AWS 的复杂查询
- python - 从一系列熊猫区间中提取左右极限