当前位置: 软件>C/C++软件
HTTP解析器 HTTP Parser
来源: http://www.oschina.net/p/http-parser
发布时间:2015-02-03
本文导语: C语言实现的HTTP解析器,提供请求和响应报文的解析功能,可用于高性能的HTTP应用程序中。它不使用任何系统调用及内存分配的功能,并且不缓冲任何数据,可以被随时中断使用。根据你的系统架构,它处理一个请求只消耗...
C语言实现的HTTP解析器,提供请求和响应报文的解析功能,可用于高性能的HTTP应用程序中。它不使用任何系统调用及内存分配的功能,并且不缓冲任何数据,可以被随时中断使用。根据你的系统架构,它处理一个请求只消耗约40字节(而对于网络服务器就是每个连接)。
功能:
- 不依赖第三方库
- 处理持续流(keep-alive)
- 分块解码
- 支持Upgrade
- 防止缓冲区溢出攻击
可以从HTTP消息中解析出下列信息:
- 报头域及值
- Content-Length
- 请求方法
- 响应代码
- 传输编码
- HTTP版本
- 请求URL
- 消息体
示例代码:
http_parser_settings settings; 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;
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。