什么是HTTP协议
- HTTP,超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议
- 设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法
-
HTTP组成部分
请求的发送方式
通过浏览器的地址栏
- 通过html当中的form表单
- 通过a链接的href
- src属性
请求方式
8种请求类型
OPTIONS
返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
HEAD
请求指定的页面信息,并返回头部信息
GET
请求指定的页面信息,并返回实体主体
- POST
向指定资源提交数据进行处理请求
PUT
向指定资源位置上传其最新内容
DELETE
请求服务器删除Request-URL所标识的资源
- TRACE
回显服务器收到的请求,主要用于测试或诊断
- CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
常用两种请求
GET
- GET 方法向页面请求发送参数
- 地址和参数信息中间用 ? 字符分隔
- http://www.it666.com/hello?key1=value1&key2=value2
- 查询字符串会显示在地址栏的URL中,不安全,请不要使用GET请求提交敏感数据
- GET 方法有大小限制:请求字符串中最多只能有 1024 个字符
- GET请求能够被缓存
- GET请求会保存在浏览器的浏览记录中
- 可以添加书签
- 编码类型为application/x-www-form-urlencoded
- 只允许ASCII字符类型,不能用二进制流
- 点击刷新时,不会有反应
-
POST
POST 方法向页面请求发送参数
- 使用POST方法时,查询字符串在POST信息中单独存在,和HTTP请求一起发送到服务器
- 编码类型为:application/x-www-form-urlencoded or multipart/form-data. 请为二进制数据使用multipart编码
- 没有历史记录
- 参数类型没有限制,可以是字符串也可以是二进制流
- 数据不会显示在地址栏中,也不会缓存下来或保存在浏览记录中,所以看POST求情比GET请求安全,但也不是最安全的方式。如需要传送敏感数据,请使用加密方式传输
- 查询字符串不会显示在地址栏中
- Post传输的数据量大,可以达到2M,而Get方法由于受到URL长度限制,只能传递大约1024字节.
- Post就是为了将数据传送到服务器段,Get就是为了从服务器段取得数据