Node azure blobService.generateSharedAccessSignature()返回一个不正确的标记

我试图用Azure节点SDK生成共享访问签名,但返回的令牌不工作/缺less一些参数。

我创build令牌:

app.get('/node-api/get-azure-token', (req, res, next) => { var blobService = azure.createBlobService(myStorageAccount, myAccessKey); var container = 'my-azure-container-name'; var startDate = new Date(); var expiryDate = new Date(startDate); expiryDate.setMinutes(startDate.getMinutes() + 10); startDate.setMinutes(startDate.getMinutes() - 5); var sharedAccessPolicy = { AccessPolicy: { ServiceVersion: '2016-05-31', Permissions: azure.BlobUtilities.SharedAccessPermissions.READ + azure.BlobUtilities.SharedAccessPermissions.WRITE + azure.BlobUtilities.SharedAccessPermissions.DELETE + azure.BlobUtilities.SharedAccessPermissions.LIST + azure.BlobUtilities.SharedAccessPermissions.ADD + azure.BlobUtilities.SharedAccessPermissions.CREATE, Start: startDate, Expiry: expiryDate, Protocols: 'https,http' } }; const key = blobService.generateSharedAccessSignature(container, req.query.bloburi, sharedAccessPolicy); res.send(key); }); 

错误“服务器无法validation请求。 确保授权标头的值正确形成,包括签名。 在使用生成的sas令牌时被抛出。

有没有人遇到过这个问题?

我只是想出来了! AccessPolicy对象中的权限顺序需要按以下顺序显示: https ://docs.microsoft.com/en-us/rest/api/storageservices/Constructing-a-Service-SAS?redirectedfrom =MSDN