标签:http
一:HTTP协议
HTTP协议:超文本传输协议. 主要用于传输文本信息.
二:HTTP协议的版本
http0.9 :只有基本的文本 GET 功能。
http1.0 : 引入MIME 完善的请求/响应模型,并将协议补充完整。
http1.1 :在 1.0 基础上进行更新,增加了如 长久连接 keep-alive 与 chunked 等功能。
三:HTTP协议请求的方法有哪些
GET: 获取数据
HEAD: 响应首部
POST: 基于html表单向服务器提交数据. 服务器通常需要存储数据.
PUT : 向服务器发送资源.通常是文件.不是数据.
DELETE: 删除资源.
OPTION: 探测服务器对请求的URL所支持使用的请求方法.
TRACE: 跟一次请求中间所经过的代理.
四:HTTP响应的状态码
1** :信息性状态码
2** :成功状态码
3** :重定向状态码.
301:永久重定向, 302:临时重定向, 会在响应报文中使用location
304:没有做任何修改
4** :客户端错误 404:请求错误. 403:没有权限. 405:使用的方法不被允许.
5** :服务器端错误.500 :服务器内部错误. 502:错误网关. 503:服务不可用.
五:HTTP协议首部
1)request: 请求协议首部
client-IP HOST: 请求主机 referer:指明了请求当前资源的原始资源的URL user-agent: 用户代理 accept:能够接受的字符集. 服务端能够发送的媒体类型. accept-charset: accept-encoding: 压缩方式 accept-language: 请求的语言 cookie:跟安全相关请求.
2)response: 相依协议首部
age:资源可以缓存的时长 server:向客户说明自己的程序名称和版本. 协商类 vary:首部列表 服务器会挑选一个最适宜的版本发送给客户端. 安全相关 WWW-authentication: set-cookie
3)通用首部
connecttion : 定义C/S之间关于请求,响应的有关选项. cache-control: 缓存控制.
4)实体首部
location: 资源的新位置. allow:允许对此资源使用的请求方法. 内容相关 content-encoding.压缩 content-language: content-length content-location content-type 缓存相关
六:HTTP协议的一些特性
http是无状态,任何资源都要进行三次握手四次断开, 不能对用户进行认证.为了避免每次访问一个页面都要登录,出现了cookie技术 记录用户账号和密码.但这种方法不安全.set-cookie. 为了减少每次连接都要进行三次握手,四次断开出现了keep-alive技术
七:一次HTTP事务过程 (站在服务器角度)
1)建立连接 2)接受请求 3)处理请求 4)访问资源 5)构建响应 6)发送响应 7)记录日志 (一次I/O 操作,用异步写入方式,先写入到内存中,隔一段时间在写入到磁盘中)
本文出自 “slayer” 博客,请务必保留此出处http://slayer.blog.51cto.com/4845839/1665255
标签:http
原文地址:http://slayer.blog.51cto.com/4845839/1665255