C语言实现的HTTP解析器,提供请求和响应报文的解析功能,可用于高性能的HTTP应用程序中。它不使用任何系统调用及内存分配的功能,并且不缓冲任何数据,可以被随时中断使用。根据你的系统架构,它处理一个请求只消耗约40字节(而对于网络服务器就是每个连接)。
功能:
不依赖第三方库处理持续流(keep-alive)分块解码支持Upgrade防止缓冲区溢出攻击可以从HTTP消息中解析出下列信息:
报头域及值Content-Length请求方法响应代码传输编码HTTP版本请求URL消息体示例代码:
http_parser_settingssettings;settings.on_url=my_url_callback;settings.on_header_field=my_header_field_callback;/*...*/http_parser*parser=malloc(sizeof(http_parser));http_parser_init(parser,HTTP_REQUEST);parser->data=my_socket;
评论