gpt4 book ai didi

azure - 通过 POSTMAN 中的 REST API,然后在 IBM APP Connect 中,以编程方式为 azure 存储帐户下的特定 Blob/文件生成/检索 SAS token

转载 作者:行者123 更新时间:2023-12-03 03:26:49 25 4
gpt4 key购买 nike

我有一个要求,必须使用 POSTMAN REST API 以编程方式完成,我必须将文件/blob 上传到 Azure 存储帐户并检索我拥有的特定文件的唯一 URL已上传,我必须将该 URL 分享给第三方,以便他们可以在浏览器上查看。

这就是我在 POSTMAN 中所做的

请求:PUT https://{storage-account-name}.blob.core.windows.net/{container-name}/{file-name}{SAS-token}

标题:x-ms-版本:2020-04-08x-ms-blob-类型:BlockBlobx-mock-response-name:上传 Blob

正文:附加来 self 本地的文件

回应:我已收到 200 个代码并且文件已成功上传。但是,在响应 header 中,我没有看到任何可以共享给第三方客户端的 URL 或唯一 SAS token 。

我还尝试将 se 和 sp 添加到 sas token ,但出现以下错误

身份验证失败服务器无法验证请求。确保授权 header 的值格式正确,包括签名。请求 ID:65282b4e-401e-0050-2337-43ee90000000 时间:2023-02-18T01:20:28.3522177Z**签名不匹配。使用的签名字符串为 r 2023-02-18T09:12:15Z/blob/storage-account-name/container-name/file-name.txt 2021-06-08 b **

注意:由于传入的流量很高,我们不想从 Azure 门户手动生成 SAS token 并构建 URL 并将其共享给客户端。一旦成功使用 postman 。我必须在 IBM App Connect enterprise 中实现相同的 ESQL 编码*

非常感谢所有建议。预先感谢您。

检索我以编程方式上传的特定文件的唯一 URL,并与第三方共享该 URL,以便他们可以在浏览器上查看它。

最佳答案

除了 sesp 参数之外,构建正确的 SAS URL 还需要以下参数:

  • 签名版本 (sv)
  • 签名资源 (sr)
  • 签名

您的错误消息表明签名与 URL 的其余部分不匹配。使用 SHA256 算法对要签名的字符串和 key 计算出的基于哈希的消息身份验证代码 (HMAC) 进行签名,然后使用 Base64 编码进行编码

您可以在 documentation page 上了解如何根据版本构建待签名字符串和签名.

Postman 有一个内置的 JavaScript 库,可以帮助您计算 HMAC:

CryptoJS.HmacSHA1("string-to-sign", "key").toString()

关于azure - 通过 POSTMAN 中的 REST API,然后在 IBM APP Connect 中,以编程方式为 azure 存储帐户下的特定 Blob/文件生成/检索 SAS token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75490653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com