HTTP的两种常用请求方式GET和POST

HTTP:HTTP协议(HyperText Transfer),用于从万维网(WWWW:World Wide Web)服务器传输超文本到本地浏览器的传输协议。

HTTP是一个基于TCP/IP通信协议来传递数据(HTML文件,图片文件,查询结果等)。

一、GET方法

使用GET方法时,查询字符串(名称或键值对)是在GET请求的URL中发送的:

/test/demo_form.php?name1=value1&name2=value2

说明:

  • GET 请求可被缓存
  • GET 请求保留在浏览器历史记录中
  • GET 请求的URL可被收藏为书签
  • GET 请求不应在处理敏感数据时使用
  • GET 请求有长度限制
  • GET 请求只应当用于获取数据

GET 方法是默认的从浏览器向 Web 服务器传递信息的请求方法,它会产生一个很长的字符串,出现在浏览器的地址栏中。GET 方法有大小限制:请求字符串中最多只能有 1024 个字符。Servlet使用doGet()方法处理这种类型的请求。

二、POST方法

使用POST方法时,查询字符串(名称或键值对)是在POST请求的HTTP消息主体重发送的:

POST /test/demo_form.php HTTP/1.1
Host: runoob.com
name1=value1&name2=value2

说明

  • POST 请求不会被缓存
  • POST 请求不会保留在浏览器历史记录中
  • POST请求的URL不能被收藏为书签
  • POST 请求没有长度要求

HTTP的方法中POST向后台传输数据比较可靠,POST 方法打包信息的方式与 GET 方法基本相同,但是 POST 方法不是把信息作为 URL 中 ? 字符后的文本字符串进行发送,而是把这些信息作为一个单独的消息进行发送。Servlet 使用 doPost() 方法处理这种类型的请求。

三、GET方法与POST方法的区别

  • 在浏览器进行回退操作时,GET请求是无害的,而POST请求则会重新请求一次
  • GET请求参数是连接在URL后面的,而POST请求参数是存放在消息主体(Requestbody)内
  • GET请求因为浏览器对url长度有限制(不同浏览器长度限制不一样)对传参数量有限制,而post请求因为参数存放Requestbody内所以参数数量没有限制
  • 因为GET请求参数暴露在URL上,所以安全方面POST比GET更加安全
  • GET请求浏览器会主动缓存(Cache),POST并不会,除非主动设置
  • GET请求参数会保存在浏览器历史记录内,POST请求并不会
  • GET请求只能进行URL编码,而POST请求可以支持多种编码方式
  • GET请求产生1个Tcp数据包,POST请求产生2个Tcp数据包
  • 浏览器在发送GET请求时会将请求头(Header)和数据(Data)一起发送给服务器,服务器返回200状态码,而在发送POST请求时,会先将Header发送给服务器,服务器返回100,之后再将Data发送给服务器,服务器返回200

HTTP的两种常用请求方式GET和POST相关推荐

  1. jQuery中ajax的4种常用请求方式

    jQuery中ajax的4种常用请求方式:1.$.ajax()返回其创建的 XMLHttpRequest 对象. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数信 ...

  2. get和post 两种基本请求方式的区别

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  3. (JavaSE 学习记录) 多线程之两种常用实现方式

    实现多线程的方式 1.继承Thread类,重写run()方法. 2.实现Runnable接口,重写run()方法. 3.实现Callable接口,重写call()方法. 尽量多实现少继承 继承Thre ...

  4. Silve37.Silverlight和ASP.NET相互传参的两种常用方式(QueryString,Cookie)

    在本节中将讲述Silverlight和ASP.NET页面的相互传参的两种常用方式:Cookie和QueryString.首先我们新建一个名 为SLConnectASP.NET的Silverlight应 ...

  5. Windows校验文件哈希hash的两种常用方式

    大家经常都到哪儿去下载软件和应用程序呢?有没想过下载回来的软件.应用程序或资源是否安全呢?在 Windows 10 和 Office 2016 发布当初,很多没权限的朋友都使用第三方网站去下载安装映像 ...

  6. 什么是动态代理?两种常用的动态代理方式

    什么是动态代理? 动态代理就是,在程序运行期,创建目标对象的代理对象,并对目标对象中的方法进行功能性增强的一种技术.在生成代理对象的过程中,目标对象不变,代理对象中的方法是目标对象方法的增强方法.可以 ...

  7. html中img显示图片的两种常用方式

    html中img显示图片的两种常用方式 显示图片,尤其是二维码的时候,大都是自动生成的,所以就需要能够从后台返回字符串,前台浏览器进行解析.好了,下面是这两种方式. 1. <img src=&q ...

  8. asp.net html silverlight 传参数,Silverlight和ASP.NET相互传参的两种常用方式(QueryString,Cookie)...

    Silverlight实用窍门系列:37  程兴亮,网名煦风满裳 在本节中将讲述Silverlight和ASP.NET页面的相互传参的两种常用方式:Cookie和QueryString.首先我们新建一 ...

  9. 3D MAX入门篇(1)常用快捷命令及两种基础建模方式

    3D MAX入门篇(1)常用快捷命令及两种基础建模方式 基于图片的对程型模型----画线式建模 1.在界面画一个平面 2.调整平面大小,确认与要插入的图片尺寸一样 3.通过添加样条线绘制出模型的一半 ...

最新文章

  1. 深拷贝——将对象拷贝到底
  2. 术,路,心:陈天桥的大脑行旅
  3. 大规模使用 Apache Kafka 的20个最佳实践
  4. face key point with 7 points
  5. 一个简单的因数分解java代码
  6. jQuery验证用户名是否可用
  7. 2D Perlin噪点
  8. Fedora 25-64位操作系统中安装配置Hyperledger Fabric过程
  9. 基于微信小程序的毕业设计题目(24)php食堂餐厅就餐预约小程序(含开题报告、任务书、中期报告、答辩PPT、论文模板)
  10. python海龟隐藏_Python海龟绘图——常用方法指令
  11. Linux中tar分卷压缩与解压缩
  12. 数据结构:关于链表直接free(p)会不会造成断链
  13. notepad++ JSON Viewer插件手动安装失败解决方案
  14. 嵌入式linux,增加串口登陆密码
  15. 计算机网络设备的种类,计算机网络设备选型依据.ppt
  16. 自用PTA题目记录0024
  17. 驱动程序如何手动卸载与更新
  18. 50例源码Python scipy.stats.norm 模块,pdf()
  19. mp4文档ISO/IEC 14496 part 12解读
  20. 01章 象数易理篇之一

热门文章

  1. 退火车票票不收手续费的好方法
  2. 解决公司网页邮箱改密码后,outlook登不进去的情况
  3. 保险销售管理系统设计与实现
  4. 在手机上面操控服务器的ssh工具
  5. .NET网站自动化部署
  6. docker 修改 mysql 端口
  7. 使用dataworks投递sls历史数据至Maxcompute
  8. 前端媒体查询知识梳理
  9. Spring注解@Autowired
  10. Several ports (8080, 8009) required by Tomcat v7.0 Server at localhost are already in use. The serve