coreHTTP 库 - FreeRTOS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

coreHTTP 库

注意

此页面上的内容可能不是最新的。有关最新更新,请参阅 FreeRTOS.org 库页面

适用于小型 IoT 设备(MCU 或小型 MPU)的 HTTP C 客户端库

简介

coreHTTP 库是 HTTP/1.1 标准子集的客户端实现。HTTP 标准提供了一种在 TCP/IP 上运行的无状态协议,通常用于分布式、协作式的超文本信息系统。

coreHTTP 库实现了 HTTP/1.1 协议标准的子集。该库已针对低内存占用空间进行了优化。该库提供了一个完全同步的 API,因此应用程序可以完全管理其并发性。它仅使用固定缓冲区,因此应用程序可以完全控制其内存分配策略。

该库使用 C 语言编写,设计符合 ISO C90MISRA C:2012。该库的唯一依赖项是标准 C 库和 Node.js 的 http-parser 的 LTS 版本 (v12.19.1)。该库有证据表明内存使用安全,没有堆分配,因此适用于 IoT 微控制器,但也完全可移植到其他平台。

在 IoT 应用中使用 HTTP 连接时,我们建议您使用安全的传输接口,例如,使用 TLS 协议的接口,如中 coreHTTP 双向身份验证演示所示。

该库可免费使用,并根据 MIT 开源许可证分发。

coreHTTP 的代码大小(使用 GCC for ARM Cortex-M 生成的示例)
文件 使用 -O1 优化 使用 -Os 优化
core_http_client.c 3.2K 2.6K
api.c (llhttp) 2.6K 2.0K
http.c (llhttp) 0.3K 0.3K
http.c (llhttp) 17.9 15.9
估计总数 23.9K 20.7K