续HTTP请求流程

Posted cuteerha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了续HTTP请求流程相关的知识,希望对你有一定的参考价值。

HTTP的状态码 
响应信息中的第一行中,最重要的是HTTP的状态码,HTTP状态码由三位数字组成,第一位数字定义了响应的类别:
1xx.信息提示,表示请求已被成功接收,继续处理,范围100~101
2xx.成功,服务器成功处理了请求,范围200~206
3xx.重定向,访问的资源已被移动,并告诉客户端新的资源地址位置,浏览器将重新对新资源发起请求,范围300~305
4xx.客户端错误状态码,客户端发送的服务器无法处理,比如格式错误的请求,或者请求不存在的URL,范围400~415
5xx.客户端发送有效请求,但web服务器自身出错,可能是服务器运行出错或者网站挂了,描述服务器内部错误,范围500~505
常见的状态码:
200:客户端请求成功 
302:重定向 
404:请求资源不存在 
400:客户端请求有语法错误 
401:请求未经授权
403:服务器收到请求,拒绝提供服务 
500:服务器内部错误 
503:服务器当前不能处理客户端请求,一段时间后可能恢复正常 
HTTP消息也称HTTP头 由四部分组成
请求头,响应头,普通头,实体头 
常用的请求头
1.Host请求报头域主要用来指定被请求资源的Internet主机和端口号
2.User-Agent请求报头域允许客户端将它的操作系统、浏览器和其它属性告诉服务器
3.Referer包含一个URL,代表当前访问URL上一个URL
4.Cookie是一段文本,常用来表示请求者身份 
5.Range:请求实体的部分内容,多线程下载一定会用到此请求头
6.x-forward-for即XXF头,代表请求端的IP,可以有多个,以逗号隔开 
7.Accept请求报头域用于指定客户端接受哪些MIME类型的信息,如Accept: text/html表明客户端希望接受HTML文本 
响应头 
1.Server服务器所使用的web服务器名称,可以通过查看此头探测web服务器名称,建议服务器端修改此头信息 
2.Set-Cookie向客户端设置Cookie,通过此头可以清楚看到服务器向客户端发送的cookie信息 
3.Last-Modified告诉浏览器资源最后修改时间 
4.Location:告诉浏览器去访问哪个页面 ,配合302码使用 
5.Refresh告诉浏览器定时刷新浏览器
普通头 
少数报头域用于所有的请求和响应信息,不用于被传输的实体,只用于传输的信息 ,了解即可 
实体头 
请求和响应消息都可以传送一个实体头.实体头定义了关于实体正文和请求所标识的资源的元信息,也就是实体内容的属性,包括实体信息类型、长度、压缩方法、最后一次修改时间 
1.Content-Type用于向接收方提示实体的介质类型 
2.Content-Encoding用作媒体类型的修饰符,它的值提示了已经被应用到实体正文的附加内容的编码,要获得媒体类型,需要采用响应的解码机制 
3.Content-Length用于指名实体正文的长度,以十进制数字表示 
4.Last-Modified用于指示资源最后修改日期和时间 
模拟HTTP请求:用Telnet模拟HTTP请求 
HTTP和HTTPS协议区别:HTTPS更安全 
截取HTTP请求: Burp Suite proxy和Fiddler
HTTP应用:搜索引擎劫持:友情链接

以上是关于续HTTP请求流程的主要内容,如果未能解决你的问题,请参考以下文章

http2续

基于http的断点续传和多线程下载

图解:HTTP 范围请求,助力断点续传,多线程下载的核心原理 | 实用HTTP

图解:HTTP 范围请求,助力断点续传多线程下载的核心原理

Go优雅的读取http请求或响应的数据-续

对http协议断点续传的理解