美文网首页
HTTP Method

HTTP Method

作者: 一代骄马 | 来源:发表于2018-05-03 16:58 被阅读62次

原文 :HTTP Method

1.安全方法

HTTP定义了一组被称为安全方法的方法。GET方法和HEAD方法都被认为是安全的,这就意味着使用GET或HEAD方法的HTTP请求都不会产生什么动作。

安全方法并不一定什么动作都不执行(由web开发者决定)

使用安全方法的目的就是当使用可能引发某一动作的不安全方法时,运行HTTP应用程序开发者通知用户。

2.GET方法

通常用于请求服务器发送某个资源。HTTP/1.1实现此方法。

3.HEAD方法

HEAD方法与GET方法的行为很类似,但服务器在响应中只返回首部。不会反回实体的主体部分。这就允许客户端在未获取实际资源的情况下,对资源的首部进行检查。

使用HEAD,可以:

在不获取资源的情况下,了解资源的情况

通过查看响应中的状态码,看看某个对象是否存在

通过查看首部,测试资源是否被修改

服务器开发者必须确保返回的首部与GET请求返回的首部完全相同

4.PUT方法

与GET方法从服务器读取文档相反,PUT方法会向服务器写入文档。有些发布系统允许用户创建WEB页面,并用PUT直接将其安装到WEB服务器上。

5.POST方法

POST方法起初是用来向服务器写入数据的。实际上,通常会用它来支持HTML的表单。表单中填好的数据通常会被发送给服务器,然后服务器将其发送到他要去的地方。

6.TRACE方法

TRACE方法允许客户端在最终将请求发送给服务器时,看看他变成了什么样子。

TRACE请求最终会在目的服务器发起一个回环诊断,行程最后一站的服务器会弹回一条TRACE响应,并在响应主体中携带它收到的原始请求报文。这样客户端就可以查看在所有中间HTTP程序组成的请求响应链上,原始报文是否以及如何被毁坏或修改过。

TRACE方法主要用于诊断

中间应用程序会自行决定对TRACE请求的处理方式

TRACE请求不能带有实体的主体部分。TRACE响应的实体主体部分包含了响应服务器收到的请求的精确副本。

7.OPTIONS方法

OPTIONS方法请求WEB服务器告知其支持的各种功能。

可以询问服务器通常支持哪些方法,或者对某些特殊资源支持哪些方法。

使用OPTIONS方法的请求和响应示例:

请求报文

响应报文

8.DELETE方法

DELETE方法所做的事情就是请服务器删除请求URL所指定的资源。

但是客户端应用程序无法保证删除操作一定会执行。因为HTTP规范允许服务器在不通知客户端的情况下撤销请求。

下面是扩展方法(WebDAV HTTP扩展)

9.LOCK方法

允许用户锁定资源,比如可以再编辑某个资源时将其锁定,以防别人同时对其进行编辑。

10.MKCOL方法

允许用户创建资源

11.COPY方法

便于用户在服务器上复制资源

12.MOVE方法

在服务器上移动资源

http - PATCH和PUT方法的区别? - SegmentFault 思否

patch方法用来更新局部资源,这句话我们该如何理解?

假设我们有一个UserInfo,里面有userId, userName, userGender等10个字段。可你的编辑功能因为需求,在某个特别的页面里只能修改userName,这时候的更新怎么做?

人们通常(为徒省事)把一个包含了修改后userName的完整userInfo对象传给后端,做完整更新。但仔细想想,这种做法感觉有点二,而且真心浪费带宽(纯技术上讲,你不关心带宽那是你土豪)。

于是patch诞生,只传一个userName到指定资源去,表示该请求是一个局部更新,后端仅更新接收到的字段。

而put虽然也是更新资源,但要求前端提供的一定是一个完整的资源对象,理论上说,如果你用了put,但却没有提供完整的UserInfo,那么缺了的那些字段应该被清空

补充:

最后再补充一句,restful只是标准,标准的意思是如果在大家都依此行事的话,沟通成本会很低,开发效率就高。但并非强制(也没人强制得了),所以你说在你的程序里把方法名从put改成patch没有任何影响,那是自然,因为你的后端程序并没有按照标准对两个方法做不同处理,她的表现自然是一样的

相关文章

  • http和ajax接口请求

    http请求 资料 http method:HTTP Request Method(十五种) http heade...

  • HTTP Method

    原文 :HTTP Method 1.安全方法 HTTP定义了一组被称为安全方法的方法。GET方法和HEAD方法都被...

  • Runtime之Method Swizzling

    Method Swizzling 参考原文:http://nshipster.com/method-swizzli...

  • HTTP Method(二)

    HTTP Method http://www.cnblogs.com/ID890/p/http.html 简介: ...

  • HTTP Request Method

    GET 请求指定的页面信息,并返回实体主体。 HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于...

  • http request method

    根据HTTP标准,HTTP请求可以使用多种请求方法。 HTTP1.0定义了三种请求方法: GET, POST 和 ...

  • http 的 method

    https://www.cnblogs.com/machao/p/5788425.html TRACE :It s...

  • http 405在servlet中的出现原因和解决方法

    HTTP Status 405 - HTTP method GET is not supported by thi...

  • ParameterEncoding

    /**HTTP method definitions.*/ // MARK: ParameterEncoding/...

  • 注解

    @RestController// 配置http@RequestMapping(value="", method=...

网友评论

      本文标题:HTTP Method

      本文链接:https://www.haomeiwen.com/subject/vellrftx.html