1.定义 HTTP: Hyper Text Transfer Protocol 超文本传输协议,用于从万维网服务器传输到超文本到本地浏览器的协议。
2.特点
1简单快速 ,协议简单,通信速度快
2灵活,允许传输任意类型的数据对象
3无连接,处理请求后断开连接
4无状态,不保存前面的状态信息
5支持B/S C/S 模式
3.URL
URI:统一资源标识符,查找资源需要的信息
URL:统一资源定位符,是一种特殊的URI,互联网上用来标志资源的地址
一个完整的URL包含一下部分:
协议部分+域名部分+端口+虚拟目录+文件+参数
4:请求消息Request 组成 请求行+请求头部+空行+请求数据
1.请求行:说明请求类型,访问的资源,及HTTP版本
2.请求头部:附加的详细信息,HOST,User-Agent等
3.空行:请求头部后面必须有空行
4.请求数据:附带的主体,参数
5:响应消息Response 组成:状态行+消息报头+空行+响应正文
1.状态行:HTTP版本,状态码,状态消息
2.消息报头:附加信息 Date,content-type等
3.空行
4.响应正文:服务器返回给客户端的文本信息
6:状态码 三位数字,五种类别
1XX 指示信息-表示请求已接收,继续处理
2XX 成功-表示请求已成功接收,理解,处理
3XX 重定向-表示完成请求需要更进一步的操作
4XX 客户端错误-表示请求有语法错误或者请求无法实现
5XX 服务端错误-表示服务端发生了错误
常见状态码:
200 OK 客户端请求成功
304 未修改,服务器不返回任务资源,资源缓存在客户端
400 Bad Request 请求有语法错误
401 请求未经授权
403 Forbidden 服务器拒绝提供服务
404 Not Found 请求资源不存在,错误的URL
500 服务器发生不可预知的错误
7:HTTP请求方法
HTTP1.0:GET,POST,HEAD
HTTP1.1:
GET:请求指定的页面,返回实体主体
HEAD:获取报头
POST:向指定资源提交数据请求处理,建立新资源或修改资源
PUT:取代指定的文档内容
DELETE:请求服务器删除指定的页面
OPTION :查看服务器的性能
TRACE:测试或诊断服务器
8:GET和POST的区别
1.请求的数据:GET附在URL之后,POST放在HTTP的包体中,不在地址栏显示出来
2.传输数据的大小:HTTP协议没有对数据的大小限制,也没有限制URL的长度
实际中,受到浏览器和服务器的URL长度的限制,GET会收到URL长度的限制
POST理论上不受限制,但是会被服务器各自的配置限制
3.安全性:POST较GET高。提交数据出现在URL上