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.

[参考译文] SIMPLELINK-WIFI-CC3120-SDK-PLUGIN:新的 HTTP 客户端 API 和 Amazon S3

Guru**** 2037690 points
Other Parts Discussed in Thread: SIMPLELINK-WIFI-CC3120-SDK-PLUGIN
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/765028/simplelink-wifi-cc3120-sdk-plugin-new-http-client-api-and-amazon-s3

器件型号:SIMPLELINK-WIFI-CC3120-SDK-PLUGIN

您好、TI、

 与版本1.X 相比、SIMPLELINK-WIFI-CC3120-SDK-PLUGIN (版本2.30.00.10)中包含的网络服务 API (版本2.40.00.11)进行了大量返工 新的 HTTP 客户端也进行了大量重修、其 API 也缩短了。  

需要将文件上传到 Amazon S3。 但 S3不支持块化上传(Transfer-Encoding:块化)。

要发出 Put 请求,应使用 HttpClient_sendRequest()方法。 有2个选项可用于在新的 HTTP 客户端中上传文件。 第一种方法是提供指向包含整个文件的缓冲区的指针。 当然、此选项无法在嵌入式系统中使用、因为 RAM 数量非常有限、并且无法分配大小等于文件大小的大缓冲区。  第二个选项-块化上传、S3不支持该选项。

最好先使用 API 发送 PUT 请求、并提供必要的头文件。 然后、在循环中、将文件的一部分读取到缓冲区、并调用某种方法仅发送正文。 因为它是在 HTTP 客户端 v 1.x 中实现的

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

此致、

尤金

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

    有一个 HttpClient_setHeader()和 HttpClient_setHeaderByName() API 可用于向请求添加标头。 此处提供更多信息:

    dev.ti.com/.../

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

    您好、Jesu、

    谢谢、我知道这些设置标头的方法。
    但在上载文件时、发送 HTTP 消息正文会出现问题。 正如我在上面所解释的、HttpClient_sendRequest 提供了2个选项。 第一步-一次发送整个文件(不起作用、因为我无法为缓冲区分配像文件大小那样大的内存)。 第2步-分块上传(Amazon S3不支持它)。

    此致、
    尤金

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

    这里的一些同事同意旧版本具有一些不错的功能、我们感谢您的建议。 同时、您可以始终将旧版本移植到新的 SDK、这不会太困难。

    Jesu