一、HTTP的8种请求方式

HTTP的请求行种包含多中请求方式,这些请求方式表明了要以何种方式来处理URI所标识的资源。

GET 请求获取由 Request-URI 所标识的资源
POST 请求服务器接收在请求中封装的实体,并将其作为由 Request-Line 中的 Request-URI 所标识的资源的一部分
HEAD 请求获取由 Request-URI 所标识的资源的响应消息报头
PUT 请求服务器存储一个资源,并用 Request-URI 作为其标识符
DELETE 请求服务器删除由 Request-URI 所标识的资源
TRACE 请求服务器回送到的请求信息,主要用于测试或诊断
CONNECT 要求利用隧道协议连接代理
OPTIONS 询问支持的方法,或者查询与资源相关的选项和需求

1、GET

GET 方法用于获取由 Request-URI 所标识的资源的信息,GET方法是默认的HTTP请求方法,例如当我们通过在浏览器的地址栏中直接输入网址的方式去访问网页的时候,浏览器采用的就是 GET 方法向服务器获取资源。
我们可以使用GET方法来提交表单数据,用GET方法提交的表单数据只经过了简单的编码,同时它将作为URL的一部分向服务器发送,因此,如果使用GET方法来提交表单数据就存在着安全隐患上。同时数据的长度十分有限,因为浏览器对URL的长度会有限制。
Http://localhost/login.php?username=aa&password=1234POST方法是GET的一个代替方法,主要用于向服务端提交数据,特别是大量的数据。 在请求头信息结束之后的两个回车换行之后(实际是空一行),就是表单提交的数据。

2、POST

POST方法不同于GET方法提交表单,它是把数据放到了报文主体中,而不是编入URL中,这样就克服了GET方法的不安全性和数据量小的问题。通常提交表单需要采用POST方法。

从编程的角度上来说,GET方法提交的数据可以再环境变量中获取,而POST的数据可以在标准输出流中获取。

3、HEAD
HEAD 方法与 GET 方法很相似,它们的区别在于 HEAD 方法只是请求消息报头,而不是完整的内容。对于 HEAD 请求的回应部分来说,它的 HTTP 头部中包含的信息与通过 GET 请求所得到的信息是相同的。利用这个方法,不必传输整个资源内容,就可以得到 Request-URI 所标识的资源的信息。这个方法通常被用于测试超链接的有效性,是否可以访问,以及最近是否更新。

二、GET和POST请求的区别

  • GET在浏览器回退时是无害的,而POST会再次提交请求。

  • GET产生的URL地址可以被Bookmark,而POST不可以。

  • GET请求会被浏览器主动cache,而POST不会,除非手动设置。

  • GET请求只能进行url编码,而POST支持多种编码方式。

  • GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。

  • GET请求在URL中传送的参数是有长度限制的,而POST么有。

  • 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。

  • GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。

  • GET参数通过URL传递,POST放在Request body中。

HTTP请求方法、GET和POST的区别相关推荐

  1. 请求方法 GET 和 POST 的区别

    1.HTTP请求方法都有哪些 HTTP/1.1协议中共有八种方法,也可以叫做"动作",来表明Request-URL对指定资源的不同操作方式 在HTTP1.0中,有三种方法:GET, ...

  2. HTTP 请求方法(GET、POST 和 PUT)

    HTTP 请求方法包括 GET.POST 和 PUT 等,它们在用途.语义和实现方式等方面有所不同. GET 方法:该方法用于从服务器获取资源,是一种安全的请求方法,因为它只是从服务器获取信息,不会对 ...

  3. restful可以转发么_什么是RESTFUL?REST的请求方法有哪些,有什么区别?

    大家好,我是IT修真院上海分院第3期学员,一枚正直善良的java程序员,今天给大家分享一下,修真院java任务中的一个知识点:什么是RESTFUL?REST的请求方法有哪些,有什么区别? restFu ...

  4. GET和POST两种基本请求方法的区别

    GET和POST两种基本请求方法的区别 回退 回退时无害 会再次提交请求 记录 URL可被记录, 用于再访问 不可以 缓存 主动缓存 可手动设置 编码方式 只进行url编码 多种编码方式 参数长度 有 ...

  5. 面试:GET和POST两种基本请求方法有什么区别

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | r6d.cn/j26B 1024 致敬极客精神 ...

  6. GET和POST两种基本请求方法的区别(截取自https://www.cnblogs.com/logsharing/p/8448446.html)

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 表单提交中get和post方式的区别有5点 1.get是从服务器上获取数据,post是向服务器传送数据 ...

  7. (转载)GET和POST两种基本请求方法的区别

    转自https://www.cnblogs.com/logsharing/p/8448446.html  作者:在途中# GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发 ...

  8. c++ post请求_前端工程师进阶:网络请求方法详解,GET和POST的区别

    1 前言 最近看了一些同学的面经,发现无论什么技术岗位,还是会问到 get 和 post 的区别,而搜索出来的答案并不能让我们装得一手好逼,那就让我们从 HTTP 报文的角度来撸一波,从而搞明白他们的 ...

  9. 307 跳转会携带请求方法吗_面试官:GET和POST两种基本请求方法有什么区别

    点击上方蓝色"后端面试那些事儿",选择"设为星标" 学最好的别人,做最好的我们 来源:r6d.cn/j26B GET和POST是HTTP请求的两种基本方法,要说 ...

  10. 面试官:GET和POST两种基本请求方法有什么区别

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 来源:r6d.cn/j26B GET和POST是HTTP请求的两种基本方法 ...

最新文章

  1. Java入门—输入输出流
  2. Spring Aop 日志管理及配置文件的详细配置
  3. 接口测试基础之入门篇(待续)
  4. matlab如何建立时间温度曲线,matlab如何绘时间曲线?
  5. Django-C003-视图
  6. Gstreamer之video转码(七)
  7. 腾讯看点基于 Flink 构建万亿数据量下的实时数仓及实时查询系统
  8. php将数组转成字符串的,php怎样将数组转化成字符串
  9. android cs bs 架构,BS架构与CS架构的区别
  10. 新浪微博第三方登录 文件不存在 c8998
  11. EJB是什么Java使用EJB容器的详细概述
  12. 怎么有的帖子发不了啊
  13. 【声明】DPDK开源社区更名为“DPDK与SPDK开源社区”
  14. CleanMyMac X mac2021系统优化清理软件激活云盘分享推荐
  15. 数字孪生 智慧医院可视化决策系统
  16. 3Dmax怎么学习?
  17. 第六周:数组 + 递归 + 函数
  18. JQuery实现下拉框Select选项的左右移动
  19. 泽无水,困。君子以致命遂志
  20. 七、CSS背景(background简写)

热门文章

  1. Java基础案例 | 第二弹(持续更新...xdm冲啊)
  2. MySQL#在指定的列中添加数据
  3. 51单片机外部中断的C51编程
  4. 认认真真做事,勤勤恳恳做人
  5. 互联网金融产品实战——安全开发篇
  6. 计算Grassmannian geodesic
  7. 22. 将文件映射到内存
  8. 桌面、平板、手机和机器人操作系统(ROS)市场占有率数据和趋势分享(附引用2019版)
  9. Presto的学习笔记
  10. Unity事件分发器