This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] BOOSTXL-CC3135:HTTPS 客户端:使用规范请求在 AWS S3上放置块数据

Guru**** 2394085 points
Other Parts Discussed in Thread: BOOSTXL-CC3135, CC3135

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/993528/boostxl-cc3135-https-client-put-chunked-data-on-aws-s3-using-canonical-requests

器件型号:BOOSTXL-CC3135
主题中讨论的其他器件: CC3135

您好、TI、

我使用的 BOOSTXL-CC3135 WIFI 模块通过 SPI 总线与运行在 FreeRTOS 上的 STM32L4连接。

我可以成功运行 TI Nttings-服务提供的 HTTP 客户端 v1.X:
+通过 TLS-1.2连接到 Amatzone S3服务器
+使用 Get 方法从桶中下载对象。
+使用 Put 方法上传单个块。

在我的应用程序中、NVM 存储上有一个1MB 文件、我要将其上传到 Amatzone S3服务器。
当然、我无法分配大小为1MB 的较大缓冲区、因为我在边缘使用 uC、因为 RAM 的数量非常有限。

BTW、由 C31xx SDK 提供的 HttpClient 库、支持使用@ref HttpClient_chunch_start、@ref HttpClient_chunch_end 和@ref HttpClient_drop_body 标志进行块化传输、
以通知库请求是块传输的开始/结束。
发送带块传输的 Put 请求后、我将获得501:HTTP_SC_NOT _ENDED <服务器错误>

根据我的理解、对于 Chunked 上传、我首先需要制作一个 CanonicalRequest 字符串、如 AWS Docs 链接中所述:
docs.aws.amazon.com/.../sigv4-streaming.html
docs.aws.amazon.com/.../sigv4-auth-using-authorization-header.html。

是否有支持授权标头的兼容 HTTP 客户端? (V4签名)。

TI 是否提供了使用规范请求进行块化上传的演示?

每个请求块都应包含一些元数据,例如:块哈希、块大小。 是否可以使用当前 HTTP 客户端进行设置?

HTTP 客户端的 API 必须与 Amazon S3等常用服务兼容。

此致、
Ridha。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Ridha、

    我不确定库是否支持所有这些(例如 sign4-auth)。 我将尝试检查。 我们目前没有任何使用 Put 的示例。

     至少应由应用程序处理与 HTTP 负载相关的部分工作(例如大小和散列计算)。

    提供了 httpclient 源代码、如果缺少内容(或使用第三方 http 客户端代码)、您可以尝试对其进行调试和更新。

    连接 CC3135的接口不是问题、NWP 确实支持此类传输所需的一切。

    BR、

    Kobi