我正在尝试为azure blob存储中的单个文件创建一个具有共享访问签名的URI。我想在后端上创建此链接,并将链接发送到我的前端,以便用户可以直接下载文件。
我在这里找到了C#的类似示例:如何从Azure Blob存储将文件下载到浏览器
但是,我很难找到NodeJS的正确方法。我查看了https://docs.microsoft.com/de-de/rest/api/storageservices/create-user-delegation-sas,但是我不确定如何使用该信息。
这是获取Blob sas网址的示例代码。
var azure = require('azure-storage');
var blobService = azure.createBlobService('storage connection');
// Create a SAS token that expires in an hour
// Set start time to five minutes ago to avoid clock skew.
var startDate = new Date();
startDate.setMinutes(startDate.getMinutes() - 5);
var expiryDate = new Date(startDate);
expiryDate.setMinutes(startDate.getMinutes() + 60);
permissions = azure.BlobUtilities.SharedAccessPermissions.READ;
var sharedAccessPolicy = {
AccessPolicy: {
Permissions: permissions,
Start: startDate,
Expiry: expiryDate
}
};
var container='test';
var blobName='test.txt';
var sasToken = blobService.generateSharedAccessSignature(container, blobName, sharedAccessPolicy);
var url=blobService.getUrl(container,blobName,sasToken);
console.log(url);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句