38.http的几种请求方法和区别

8 种请求方法

  1. OPTIONS:返回服务器针对特定资源所支持的 HTTP 请求方法,也可以利用其向 web 服务器发送 * 的请求来测试服务器的功能性。
  2. HEAD:向服务器索与 GET 请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
  3. GET:向特定的资源发出请求,它的本质就是发送一个请求来取得服务器上的某一资源。
  4. POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件等)。数据被包含在请求体中。
  5. PUT:向指定资源位置上传最新内容。
  6. DELETE:请求服务器删除 Request-URL 所表示的资源。
  7. TRACE:回显服务器收到的请求,主要用于测试或诊断。
  8. CONNECT:协议中预留给能够将连接改为管道方式的代理服务器。

三、GET 和 POST 区别?

首先, GET 和 POST 方法都是基于 TCP/IP 协议,也就是说,两者的数据传输都是建立在 TCP 的连接,所以,如果从两者的本质来讲并没有多大的区别,你非要给 GET 方法加上 request body,给 POST 方法加上 URL 参数都是行得通的,HTTP 协议对于 GET 和 POST 其实并没有长度限制。

因而,两者的区别更多地体现在使用规范上,从使用规范上来说:

  • GET 浏览器回退是无害的,而 POST 会再次提交请求。
  • GET 产生的 URL 地址可以被书签收藏,并且被浏览器缓存,而POST不能书签收藏也不能缓存。
  • GET 只能进行 URL 编码,而POST 支持多种编码方式。
  • GET 参数通过 URL 传递,并且长度有限制,而 POST 放在 request body 并且长度没有限制。并且,正因为这个原因, GET 比 POST 更不安全,因为参数暴露在 URL 中。
原文地址:https://www.cnblogs.com/dream111/p/13459993.html