如何在LwIP中设置HTTP响应头部?
时间: 2024-09-18 08:12:25 浏览: 6
在LwIP中设置HTTP响应头部主要是通过`http_header_add()`函数。这个函数允许你在响应消息中添加或修改标准的HTTP头字段。下面是一个简单的例子,展示如何设置常见的HTTP响应头部,比如状态码、内容类型和位置:
```c
// 创建一个新的HTTP响应
struct http_message *response = http_new_message(HTTP_MSG_RESPONSE);
// 设置状态码(如200表示成功,404表示未找到)
http_status_set(response, HTTP_STATUS_OK);
// 添加Content-Type头部,指定返回的数据类型(如"text/html")
http_header_add(response, "Content-Type", "text/html");
// 如果有URL重定向,添加Location头部
if (redirect_url) {
http_header_add(response, "Location", redirect_url);
}
// 现在可以将响应发送给连接的客户端
http_send_response(conn, response);
// 后续记得释放创建的资源
http_free_message(response);
```
`http_header_add()`的第一个参数是你想要添加或更新的头名称(字符串形式),第二个参数是值(也可以是字符串)。如果有多个相同的头(比如多个Cache-Control字段),LwIP默认只保留最后一个添加的。
注意,LwIP提供的HTTP API可能会随着版本变化而有所不同,所以在实际项目中,最好查阅最新的文档或官方示例代码。