http协议总结
1.http协议基于请求/响应的模式,请求和响应必须成对。
2.请求方式:常用的get,post请求,其他的不常用
3.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
4.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
5.http默认端口号是80
6.请求(request):
请求行: 请求方式(get/post) 请求路径(url) 协议/版本(http/1.1)
请求头:key:value的形式,常用的有cookie,user-agent,if-modified-since等参数
请求体:post请求的参数放在请求体,所以post请求的参数没有长度限制。get请求没有请求体,参数拼接在url路径后面,长度有限制
7.响应(response):
响应行:协议/版本 状态码 状态描述
常见的状态码:4xx:客户端发生错误,有语法错误或请求无法实现
5xx:服务端错误,服务端未能实现合法的请求
200:OK
400:bad request:客户端请求有错误,不能被服务端所理解。出现这个错误,一般考虑两方面。一方面是页面的请求是否正确。另一方面是后台的表现层框架对请求的解析方式是否设置正确。
403:forbidden:服务器收到请求,但拒绝提供服务
响应头:key:value形式的,常见的响应头有:location:与302状态码配合,进行重定向
refresh:返回一个页面后,定时刷新
content-disposition:浏览器下载文件的格式
响应体:服务器发给浏览器的正文内容。如:html中的内容.由此可知,html页面也好,jsp页面也好,都是存在服务器上的,然后服务器把这些资源通过响应体传递给浏览器