当我们进行Android开发的时候可能99%的情况下使用的都是POST和GET这两种方式。
以下请求是已Android前端开发场景适当讲解的。
这也是我们最熟知的两种方式,但是当我们开发更高阶和更复杂的项目时这些更全面的网络知识,就会为我们提供更宽广的思路去解决问题。
接下来我们就逐个的讲解分析一下常见的HTTP Request Method
1.GET 请求指定的页面信息,并返回实体主体。这里对于前端来说并没有页面,而是一个指定的地址,获取一个相对静态的信息。
2.POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
GET和POST的区别 :
根据 HTTP 规范,GET 用于信息获取,而且应该是 安全的和 幂等的。所谓安全的意味着该操作用于获取信息而非修改信息。换句话说,GET 请求一般不应产生副作用。幂等的意味着对同一 URL 的多个请求应该返回同样的结果。完整的定义并不像看起来那样严格。从根本上讲,其目标是当用户打开一个链接时,她可以确信从自身的角度来看没有改变资源。比如,新闻站点的头版不断更新。虽然第二次请求会返回不同的一批新闻,该操作仍然被认为是安全的和幂等的,因为它总是返回当前的新闻。反之亦然。POST 请求就不那么轻松了。POST 表示可能改变服务器上的资源的请求。仍然以新闻站点为例,读者对文章的注解应该通过 POST 请求实现,因为在注解提交之后站点已经不同了(比方说文章下面出现一条注解)
从数据控制的角度来说一个是查一个是改。也可以从这个角度来说明POST和GET的区别
根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的。
(1.)所谓安全的意味着该操作用于获取信息而非修改信息。换句话说,GET请求一般不应产生副作用。就是说,它仅仅是获取资源信息,就像数据库查询一样,不会修改,增加数据,不会影响资源的状态。
- 注意:这里安全的含义仅仅是指是非修改信息。
(2.)幂等的意味着对同一URL的多个请求应该返回同样的结果。这里我再解释一下幂等这个概念:
(3.)GET编码类型application/x-www-form-url,POST编码类型encodedapplication/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。
3.PUT 从客户端向服务器传送的数据取代指定的文档的内容
4.DELETE 请求服务器删除指定的页面 删除指定的数据
记忆技巧:Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE
5.HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头( 只请求页面的首部。也就是HEAD中的信息)
6.CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
7.OPTIONS 允许客户端查看服务器的性能
8.TRACE 回显服务器收到的请求,主要用于测试或诊断。
9.PATCH 实体中包含一个表,表中说明与该URI所表示的原内容的区别。
接下来再给大家看一下常见的请求头包含的信息
Authorization HTTP授权的授权证书
Cache-Control 指定请求和响应遵循的缓存机制
Cookie HTTP 请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器。
Content-Length 请求的内容长度