首页 > 代码库 > HTTP协议
HTTP协议
一、HTTP协议简介
客户端连上web服务器后,如果想获得web服务器中的某个web资源,需要遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通讯的格式。
基于TCP链接的传输协议
默认端口是80
基于请求-响应模式的协议
HTTP是Hypertext transfer protocol(超文本传输协议)的缩写,它是TCP/IP协议的一个应用层协议,用于定义web浏览器与文本服务器之间交换数据的过程。
二、HTTP协议的版本以及区别
HTTP 1.0版本中,客户端与web服务器建立连接后,只能获取一个web资源。
HTTP 1.1版本中,允许客户端与web服务器建立连接后,可以获取多个web资源。
三、HTTP的get及post请求
请求:
*请求行
*请求方式
*get、post、head等
*常用的post和get
*区别
*get把参数显示在地址栏(就是在请求行)上,安全级别低,不支持大数据
*post把参数封装在请求体中,安全级别高,支持大数据。
*请求地址
*请求资源
*协议版本
*HTTP/1.1
*请求头
*Accept: text/html,image/*
*Accept-Charset: ISO-8859-1 客户端字符集
*Accept-Encoding: gzip 客户端支持编码类型gzip压缩格式
*Accept-Language:zh-cn 客户端语言
*Host: www.itcast.com:80 访问服务器地址
*If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT (重要) 和Last-Modified一起使用 控制缓存
*Referer: http://www.itcast.com/index.jsp (重要)代表当前网页的来源 防止盗链
*User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) 浏览器类型(文件下载时,不同浏览器进行不同处理)
*Connection: close/Keep-Alive 请求后连接是关闭还是保持
*Date: Tue, 11 Jul 2000 18:23:51 GMT 请求时间
*重要的头
*If-Modified-Since 必须和响应头信息一起来完成控制缓存
*Referer 当前网页的来源。(防止盗链)
*User-Agent 判断当前浏览器的版本
*空行
*请求体
*封装post参数列表
四、响应内容
响应行
协议版本
HTTP/1.1
状态码
200 请求成功处理,一切OK
302 请求重定向
304 服务器资源没有改动,通知客户端查找本地缓存
404 客户端访问资源不存在
500 服务器内部错误
状态描述
响应头
Location: http://www.it315.org/index.jsp
Server:apache tomcat
Content-Encoding: gzip
Content-Length: 80
Content-Language: zh-cn
Content-Type: text/html; charset=GB2312
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT
Refresh: 1;url=http://www.it315.org
Content-Disposition: attachment; filename=aaa.zip
Expires: -1
Cache-Control: no-cache
Pragma: no-cache
Connection: close/Keep-Alive
Date: Tue, 11 Jul 2000 18:23:51 GMT
重要的头
Location和302 一起完成重定向
Last-Modified和If-Modified-Since以及304 控制缓存
Refresh 页面的定时跳转
Content-Disposition 设置文件是以附件的形式下载
Expires: -1
Cache-Control: no-cache 禁用缓存 (网银)
Pragma: no-cache
空行
响应体
本文出自 “11831428” 博客,请务必保留此出处http://11841428.blog.51cto.com/11831428/1905633
HTTP协议