摘要
当访问网页时,根本原因是发送http请求得到响应,得到页面展示。
或者,上传照片或视频时,之所以上传成功是通过http请求上传,把资源放到网上。
当客户端向服务端发送请求时,针对不同意图的请求,分为不同http请求组方法。
1.GET请求
GET方法是常见也是最简单的http请求发方法,主要用来获取资源。
可以说,客户端请求什么,服务端就原样返回;请求是文本,就原样返回;请求程序,返回结果。
2.POST请求
POST方法主要用来传输实体的主体。
当客户端需要向服务器传输时,就可以用POST方法。那GET方式也是可行,但不推荐使用GET方法来对实体主体进行传输。
3.PUT请求
PUT方式主要用来传输文件,就像FTP协议的文件上传
由于http/1.1的PUT方法不带验证机制,存在安全问题,所以一般不使用这个方法进行文件传输
4.HEAD请求
HEAD请求主要用来获取报文首部
HEAD方法和GET方法一样,只不过不返回报文的主体部分,只是用来确定请求的有效性及资源的更新日期时间等
5.DELETE请求
DELETE方法主要是用来删除某个资源,和PUT完全相反。
该方法不带认证机制,所以一般网站并不会对它进行开放使用。
6.OPTIONS请求
OPTIONS方法用来查询:请求的指定资源都支持http方法
7.GET和POST区别
GET在浏览器回退时是无害,POST会再次提交请求
GET产生URL地址可被Bookmark,而POST不可以
GET请求会被浏览器主动cache。而POST不会,除非手动设置
GET请求只会进行URL编码,而POST支持多种编码方式
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留
GET请求在URL中传送的参数是有长度限制,而POST没有
对参数的数据类型,GET只接受ascll字符,所以不能用来传递敏感信息
GET参数通过URL传递,POST放在Request boy 中