http协议浅析
来源:互联网 发布:淘宝街拍用什么相机 编辑:程序博客网 时间:2024/06/05 20:59
HTTP协议:
http协议是一种基于C/S模式的无状态协议,其既可以使用非持久连接,也可以使用持久连接,默认方式下HTTP使用持久连接。
- 无状态指的是HTTP服务器并不保存关于客户机的任何信息。
- 非持久连接指的是每个请求/响应对是经一个单独的TCP连接发送的,而持久连接指的是所有连接以及响应经由相同的TCP连接发送。
HTTP报文格式
请求行有三个字段,方法字段,URL字段和HTTP版本字段。方法字段有GET,POST,HEAD,PUT和DELETE.
- GET: 请求获取URL所标识的资源
- POST:在请求的URL所标识的资源后附加新的数据
- HEAD: 请求获取URL表示的资源的响应消息报头
- PUT:用户用来将对象上传到指定服务器指定的URL
- DELETE:删除服务器上的对象。
首部行由key/value对组成,每对一行,关键字和值用“:”分隔。如:
Host: www.someschool.eduConnection:close.....//
HTTP响应报文
//响应报文实例HTTP/1.1 200 OKConnection:closeDate:Tue,09 AUg 2011 15:44:04 GMTServer:Apache/2.2.3Last-Modifier: Tue,09 Aug 2011 15:11:03 GMTContent-Length:6821Content-Type:text/htmldata.....
- 状态行有三个字段:协议版本,状态码和相应状态信息。
状态码由三个数字组成,第一位数字表示响应的类型,常用状态码由如下5类:
- 1xx:表示服务器已经接受了客户端请求,客户端可继续发送请求
- 2xx:表示服务器已经成功接受到请求并处理
- 3xx:表示服务器要求客户端重定向
- 4xx:表示客户端请求有非法内容
- 5xx:表示服务器未能正常处理客户端的请求而出现意外错误
常见状态码:
- 200 OK:请求成功,信息包含在返回的响应报文。
- 301 Moved Permanently:请求的对象已经被永久转移了,新的URL定义在响应报文的Location。
- 400 Bad Request:一个通用差错代码,指示该请求不能被服务器理解
- 404 Not Found:被请求的资源不存在
- 500 Internal Server Error:表示服务器发生了不可预期的错误,导致无法完成客户端的请求
- 503 Service Unavailable:表示服务器当前不能够处理客户端的请求,在一段时间之后,服务器可能会恢复正常
- 505 HTTP Version Not Supported:服务器不支持请求报文使用的HTTP协议版本。
首部行关键字如下:
- Location:用于重定向接受者到一个新的位置
- Server:包含了服务器用来处理请求的软件信息和版本
- Connection:指示连接方式。(close表示连接已关闭,keeplive表示连接保持着,在等待本次连接的后续请求)
- Keep-Alive:如果浏览器请求保持连接,则该头部表示希望web服务器保持连接多长时间。
阅读全文
0 0
- 浅析HTTP协议 (转载)
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析HTTP协议
- HTTP 协议浅析(上)
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析http协议
- 浅析HTTP协议
- Http协议浅析
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析HTTP协议
- 浅析HTTP协议
- struts2如何完成文件的上传?
- ui-select官方教程(一)——入门简介
- HTTP无状态特征与短连接
- python1
- ArcGIS字段计算器分割字段中的字符串
- http协议浅析
- rhce实战 博客教学
- 降维三部曲(三)
- 浏览器并发连接限制
- php开启redis扩展
- Loading图代码
- java(4)抽象类和接口
- 如何通过cmdline获取panel型号的dtsi文件节点(qcom,lcd,id)
- 降维三部曲(一)