如何请求缩写的http标头

时间:2014-03-07 17:48:52

标签: apache http embedded

我正在使用WiFi连接的微控制器。我正在与Apache服务器上托管的API进行交互。我的客户端内存非常有限。它是一个价值线(读:便宜)微控制器,只有4KB的RAM。 HTTP标头有时会占用500个字节。有效负载只是几十个字节的JSON。 HTTP头中包含的很多头信息对我来说都没用,我只需要Content-Length。所以,我在缓冲区上浪费了很多RAM,这些缓冲区必须足够大才能容纳所有这些浪费的HTTP信息。

有没有办法请求服务器在请求中发送更少的标头内容?

1 个答案:

答案 0 :(得分:1)

您并不需要将整个HTTP标头保留在RAM中。你应该尝试一次读一行。 http头字段有一个简单的“key:value \ r \ n”模式(第一行除外)。 当您收到字节流时,存储所有字符,直到您收到\ r \ n模式。然后解析该行,清除缓冲区并开始接收以下字节。等等...... 你会发现你真正需要的缓冲区不是很大。