Node.js 使用 azure 读取 blob 并创建 SAS 令牌

Node.js reading a blob with azure and creating a SAS token

所以我目前正在编写一些代码来获取一个容器,然后选择一个 blob 并制作一个 SAS 令牌。目前所有这些都有效,但是当我尝试打开 link.

时出现错误

报错是这样的

AuthenticationFailed 服务器无法验证请求。确保 Authorization header 的值格式正确,包括签名。 RequestId:somethingsomething 此资源级别不允许指定的签名资源

const test = () => {
  const keyCredit = new StorageSharedKeyCredential('storageaccount', 'key')
  const sasOptions = {
  containerName: 'compliance',
  blobName: 'swo_compliance.csv',
};

  sasOptions.expiresOn = new Date(new Date().valueOf() + 3600 * 1000);
  sasOptions.permissions = BlobSASPermissions.parse("r");


   const sasToken = generateBlobSASQueryParameters(sasOptions, keyCredit).toString();
   console.log(`SAS token for blob container is: url/?${sasToken}`);

return `url/?${sasToken}`;

}

我尝试在我的系统中重现能够使用 sas 令牌下载 blob 的场景

当您在代码中返回 return url/?${sasToken}; 时删除 “/” 只需给出 return url?${sasToken};

示例 URL:https://StorageName.blob.core.windows.net/test/test.txt?SASToken

我尝试在我的系统中下载 blob