HTTP协议请求方法
———————————————————————————————————————————————
————————————————————————————————————————————————
GET: 请求指定的页面信息,并返回实体主体。
HEAD: 只请求页面的首部。
POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体。
PUT: 从客户端向服务器传送的数据取代指定的文档的内容。
DELETE: 请求服务器删除指定的页面。
OPTIONS: 允许客户端查看服务器的性能。
TRACE: 请求服务器在响应中的实体主体部分返回所得到的内容。
PATCH: 实体中包含一个表,表中说明与该URI所表示的原内容的区别。
MOVE: 请求服务器将指定的页面移至另一个网络地址。
COPY: 请求服务器将指定的页面拷贝至另一个网络地址。
LINK: 请求服务器建立链接关系。
UNLINK: 断开链接关系。
WRAPPED: 允许客户端发送经过封装的请求。
Extension-mothed:在不改动协议的前提下,可增加另外的方法。
—————————————————————————————————————
GET 获取 请求页面指定信息(实体)
- 请求资源为 动态资源 (非HTML) 返回文本 web容器解析 HTML源代码(非源文件)
eg: index,jsp ----返回-----> 解析后的 HTML文件
请求 xxx.jsp xxxxid=xxx9
服务端 脚本语言 选择性接收 参数
eg:id=1&name=admin 有开发者内定好 参数 服务器项目才会接收
eg: 设定好只接收 id 参数项目 加入其他参数项
Index.php?id=1&username=admin (多个参数以&分隔)
脚本 不理会 只会接收id 参数----->查询数据 ---->发送HTML数据 (不会乱套)
HEAD 服务器不能在 响应里 返回 消息主体 其他同GET
- HEAD 请求常常 被忽略,但是能提供很多有用的信息,
- 特别是在有限的速度和带宽下。主要有以下特点:
1、只请求资源的首部;
这种方法可以用来获取请求中隐含的元信息,而不用传输实体本身。
- HTTP头中包含的元信息应该和一个GET请求的响应消息相同
- 得到Request-URI所标识的资源的信息
2、检查超链接的有效性、可访问性、;
----->编写扫描工具(测试资源是否存在)
3、检查网页是否被修改; 最近改变。
4、多用于自动搜索机器人获取网页的标志信息,获取rss种子信息,或者传递安全认证信息等
- 一个HEAD请求的响应可被缓存,也就是说,
响应中的信息可能用来更新之前缓存的实体。
如果当前实体跟缓存实体的阈值不同
(可通过Content-Length、Content-MD5、ETag或Last-Modified的变化来表明),
那么这个缓存就被视为过期了。
POST 与GET(无请求内容)类似
用于向服务器发送 大量数据 (GET有长度限制 会将发送的数据显示在浏览器端)
- 安全性高一些
- 上传文件 提交留言 (向服务器发送大量的数据)
- 用POST 向sended.asp 发送请求 -----> 传递参数 book_title xxxxxx
PUT 请求服务器把实体存储在请求资源下(存在替换,不存在创建 <-正文)
- 主机根目录 创建shell.asp 内容一句话
- 通常情况下 关闭PUT方法 防止危险方法建立文件
DELETE 请求 服务器删除指定资源
- 危险方法 关闭 删除文件操作
TRACE 激发 远程 应用层请求消息回路 回显服务器收到请求
- 允许客户端 了解数据 被请求链 的 另一端接收情况
- 此方法少见
- 利用数据信息去 测试 诊断
CONNECT
- HTTP1.1 协议 保留 动态切换隧道代理
OPTIONS 获取 有URI标识 的 资源 在请求/响应过程中的 可用功能选项
- 客户端 在采取具体资源请求 前 决定对 该资源 采取 何种 必要措施
- 了解服务器 性能
以上 HTTP1.1 标准方法
————
WEBDAV --基于HTTP /1.1 通讯协议 拓展
- 使程序应用 可直接对 web server 读写
- 支持 写文件锁定 Locking
- 解锁Unlock
- 文件复制 Copy
- 文件移动 Move
- 支持文件版本控制