http_parse使用与学习

本文介绍了http_parse库的特性,它是nginx用于解析HTTP的库,不依赖系统调用,不缓存数据,可以在任意时刻中断。内容分为两部分,第一部分简述HTTP基础知识,第二部分详细讲解http_parse的使用,包括结构体http_parser和http_parser_settings,以及如何利用http_parser_parse_url进行URL解析。文章鼓励读者通过实践进一步研究fast-http库。
摘要由CSDN通过智能技术生成

最近学习了下http_parse解析库,是nginx的一个解析http库, 在解析的过程中,它不会调用任何系统调用,不会在HEAP上申请内存,不会缓存数据,并且可以在任意时刻打断解析过程,而不会产生任何影响。在解析http的时候使用http_parse可以大幅度提高效率(Ps:当然一些开源的库也是比较好用的。如果你写的是基础框架类,那么使用这个库是再好不过了)。

本文主要分为两部分学习。第一部分简单了解http的一些基本知识。第二部分简单学习http_parse库使用

第一部分:http基本知识

1.http的请求格式包括 request line、Request header、空行、Body。如果是get方法则不包含body。

2.url解释

schema://host[:port#]/path/.../[?query-string][#anchor]

scheme               指定低层使用的协议(例如:http, https, ftp)

host                   HTTP服务器的IP地址或者域名

port#                 HTTP服务器的默认端口是80,这种情况下端口号可以省略。如果使用了别的端口,必须指明,例如 http://www.cnblogs.com:8080/

path                   访问资源的路径

query-string       发送给http服务器的数据

anchor-             锚

 

举例:

http://www.mywebsite.com/sj/test/test.aspx?name=sviergn&x=true#stuff

Schema:                 http
host:                   www.mywebsite.com
path:                   /sj/test/test.aspx
Query String:           name=sviergn&x=true
Anchor:                 stuff

网上有很多http相关的学习博客或者文档。这里就不多余的阐述了

第二部分 http_parse使用


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值