GET和POST请求的区别(超详细)

12 篇文章 4 订阅
订阅专栏

相信很多小伙伴在面试的过程中,总会被面试官问道:“请你回答一下GET请求和POST请求的区别?”

大家的回答一般都是如下图:

 1.get请求一般是去取获取数据(其实也可以提交,但常见的是获取数据);
post请求一般是去提交数据。

2.get因为参数会放在url中,所以隐私性,安全性较差,请求的数据长度是有限制的,
不同的浏览器和服务器不同,一般限制在 2~8K 之间,更加常见的是 1k 以内;
post请求是没有的长度限制,请求数据是放在body中;

3.get请求刷新服务器或者回退没有影响,post请求回退时会重新提交数据请求。

4.get请求可以被缓存,post请求不会被缓存。

5.get请求会被保存在浏览器历史记录当中,post不会。get请求可以被收藏为书签,因为参数就是url中,但post不能。它的参数不在url中。

6.get请求只能进行url编码(appliacation-x-www-form-urlencoded),post请求支持多种(multipart/form-data等)。
 

对于有了2年以上开发经验的小伙伴来说,光回答这几点是不够滴。接下来,我就告诉大家可以补充以下几点:

在这里插入图片描述

1.报文上的区别
GET 和 POST 只是 HTTP 协议中两种请求方式,所以在传输上,没有区别,因为HTTP 协议是基于 TCP/IP 的应用层协议报文格式上,不带参数时,最大区别仅仅是第一行方法名不同,一个是GET,一个是POST带参数时报文的区别呢?在约定中,GET 方法的参数应该放在 url 中,POST 方法参数应该放在 body 中,举个例子,如果参数是 name=qiming.c, age=22。
GET 方法简约版报文可能是这样的

GET /index.php?name=qiming.c&age=22 HTTP/1.1
Host: localhost

POST 方法简约版报文可能是这样的


POST /index.php HTTP/1.1

Host: localhost


Content-Type: application/x-www-form-urlencoded name=qiming. c&age=22

2.GET 方法参数写法是固定的吗?
在约定中,一般我们的参数是写在 ? 后面,用 & 分割。
我们知道,解析报文的过程是通过获取 TCP 数据,用正则等工具从数据中获取 Header 和 Body,从而提取参数。
也就是说,我们可以自己约定参数的写法,只要服务端能够解释出来就行,一种比较流行的写法是这样 :
http://www.example.com/user/name/yourname/age/22

3、POST 方法比 GET 方法安全?
按照网上大部分文章的解释,POST 比 GET 安全,因为数据在地址栏上不可见。
然而从传输的角度来说,他们都是不安全的,因为 HTTP 在网络上是明文传输,只要在网络节点上抓包,就能完整地获取数据报文。
要想安全传输,就只有加密,也就是 HTTPS

GET与POST两种请求方法的区别
夏冬丶王阳旭
07-20 1182
前言 在Web开发中,最常见的Http请求,Get请求Post请求,使用最广,一般在初级的面试中,会时不时问起这个基础问题。 这个问题看起来简单,但实际有一些坑,这里就详细说明一下这两种请求方式的区别 正文 首先,直接给出答案: Get请求Post请求,本质上没有什么区别 此时你可能一脸懵逼,没有区别,干嘛要问,很多时候就是看你能不能理解其本质上的无区别,和日常表现中的有区别。 首先,来看下日常表现出的有区别,这种区别有很多,比如: get请求将参数传递编码在url中进行传
get和post请求区别.pdf
02-29
### GET和POST请求区别 #### 一、概述 在HTTP协议中,GET和POST是最常见的两种请求方法。这两种方法在数据传输、安全性、数据量、数据类型等方面具有显著的不同。理解这些区别对于合理设计和实现Web应用至关重要...
C#的http发送post和get请求源码
02-04
C#的http发送post和get请求源码,非常轻量简单,测试的时候简单实用下挺不错
GET请求POST请求区别详细
10-23
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。
关于GET请求POST请求
最新发布
qq_54161774的博客
08-11 1066
例如:如果一个表单中有两个字段,分别为name和age,它们的值分别为Tom和25,那么经过application/x-www-form-urlencoded编码后,发送给服务器的数据将会是:name=Tom&age=25)相同点:GET请求POST请求底层都是基于TCP/IP协议实现的,使用二者中的任意一个,都可以实现客户端和服务器端的双向交互。5.幂等性:GET请求支持幂等性,即多次请求同一资源,结果相同;7.后退按钮/刷新:点击后退按钮/刷新时,GET请求无害,POST请求,数据会被重新提交。
GET与POST区别
weixin_30389003的博客
09-22 1426
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。 你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。 当你在面试中被问到这个问题,你的内心充满了自信和喜悦。 你轻...
get和post请求区别
early_day的博客
05-20 1万+
常用http请求方法用途 get 发送一个请求常用来获取服务器资源 post 向URL指定的资源提交数据或附加新的数据 put 跟POST方法很像,也是像服务器提交数据进行处理请求。但是,它们之间有不同。PUT指定了资源在服务器上的位置,而POST没有。一般用于修改资源 delete 请求服务器删除指定的资源 最常见的就是post与get方法,下面详细介绍一下二者的区别 1、URL形式 get将表单中数据按照name=value的形式,添加到action 所
GET和POST请求区别
qq_26866883的博客
05-09 873
GET和POST请求区别 一. 概述 本文的内容源自其他博客的总结,属于笔者的读书笔记,结构如下: HTTP 的请求报文 GET 方法的特点 POST 方法的特点 GET 和 POST区别 二. HTTP 的请求报文 首先我们要解决的第一个问题是:GET 和 POST 是什么? GET 和 POST 其实都是 HTTP 的请求方法。除了这 2 个请求方法之外,HTTP 还有 HEAD、PUT 、DELETE、TRACE、CONNECT、OPTIONS 这 6 个请求方法。所以HTTP 的请求方法共计有
Get请求Post请求区别
Hisky的博客
07-02 1万+
get请求post请求的却别起初我就知道,get请求是明文在地址栏传输,而post请求则与之相反不会出现在地址栏 下面就是get和post请求的详解 区别 1、get请求一般用来请求获取数据 post请求一般作为发送数据到后台,传递数据,创建数据 2、get请求也可以传参到后台,但是传递的参数则显示在地址栏,安全性低,且参数的长度也有限制 post请求则是将传递的参数放在request body中,不会在地址栏显示,安全性比get请求高,参数没有长度限制 3、get请求刷...
Java面试之Get请求Post请求
01-08
 之前一次面试时面试官问到了Get请求Post请求区别,对于web基础来说这个还是比较重要的,所以我打算整理一下分享给大家,以下是我个人的一些总结,如果大神有更好的理解,欢迎补充。 从三个方面来总结 Get请求...
JSP、Servlet中get请求post请求区别总结
10-25
首先,GET请求POST请求在数据传输方式上有显著差异。GET请求将参数直接附加到URL后面,以问号分隔,而URL长度通常限制在2KB以内。因此,对于需要传输大量数据或者包含敏感信息的情况,GET请求并不适用。相反,POST...
C# 使用Get和Post请求获取数据
11-10
在Web开发中,与服务器进行交互的一个关键方法是通过HTTP(文本传输协议)发送GET和POST请求。这两个方法是HTTP协议中最基本的请求类型,用于从服务器获取或向服务器提交数据。 首先,让我们详细了解GET请求。GET...
get和post请求区别.zip
02-29
综上所述,GET和POST请求在功能、安全性、数据处理和交互行为上存在显著差异。开发人员应根据具体需求选择合适的方法,以实现高效、安全的Web应用。在实际编程中,还要考虑到不同浏览器和服务器的兼容性问题,遵循...
post和get区别
Restless Breeze
09-22 2万+
HTTP给汽车运输设定了好几个服务类别,有GET, POST, PUT, DELETE等等,HTTP规定,当执行GET请求的时候,要给汽车贴上GET的标签(设置method为GET),而且要求把传送的数据放在车顶上(url中)以方便记录。如果你用GET服务,在request body偷偷藏了数据,不同服务器的处理方式也是不同的,有些服务器会帮你卸货,读出数据,有些服务器直接忽略,所以,虽然GET可以带request body,也不能保证一定能被接收到哦。GET和POST能做的事情是一样一样的。...
Get请求Post请求区别
qq_42774501的博客
04-28 360
Get请求Post请求区别
get请求post请求区别(全面讲解)
热门推荐
qq_42931285的博客
08-22 8万+
get和post请求区别详解
GET请求POST请求区别
weixin_33713707的博客
11-19 130
GET请求POST请求区别 经常遇到「既然GET请求可以做POST请求的事情,为什么还要区分GET和POST而不只使用一个请求?」的问题。作为在实际中被使用最广的两个请求方法,这个问题其实挺难回答的,但万物总有其根由,今天就追根究底。 查看RFC规范再加上之前查过的一些二手文章,整理了如下的观点: GET 被强制服务器支持 浏览器对...
get和post请求区别
04-27
GET和POST都是HTTP协议中的请求方法,用于向服务器请求数据或提交数据。它们的主要区别在于数据传递方式和安全性。 GET请求将参数直接附加在URL后面,以问号?作为分隔符,多个参数之间用&连接,例如http://example.com?name=John&age=20。这种传输方式简单快捷,但对于携带敏感信息的数据不安全,因为URL和参数都可以在浏览器地址栏中看到。 POST请求将参数放在请求体中,不会直接暴露在URL中,因此相对于GET请求更安全。POST请求适用于提交表单、上传文件等需要传输大量数据的情况。 此外,GET请求的数据长度受到URL长度限制,一般不过2048个字符;而POST请求没有长度限制。
写文章

热门文章

  • 解决:Unknown column ‘id‘ in ‘where clause‘ 问题 67557
  • Java代码实现“爱心”表白 32797
  • 算法该不该刷?如何高效刷算法? 23630
  • IDEA在创建包时如何把包分开实现自动分层 14908
  • 02SpringBoot入门--Maven搭建项目 10410

分类专栏

  • 计算机基础 2篇
  • 程序人生 2篇
  • Spark实时项目
  • 数据仓库 1篇
  • Spark 3篇
  • Scala 12篇
  • Hive 2篇
  • Hadoop 3篇
  • 综合性知识 1篇
  • 剑指Offer-LeetCode面试高频算法
  • 八大排序算法 9篇
  • 四大查找算法 2篇
  • 递归循环 9篇
  • 排序查找 5篇
  • 字符串 8篇
  • 数组 15篇
  • 链表 18篇
  • 栈与队列 6篇
  • 树-二叉树 15篇
  • 数学+其他 6篇
  • 数据结构和算法 11篇
  • 剑指Offer 47篇
  • IDEA 11篇
  • ZooKeeper 14篇
  • JavaSE 12篇
  • MySQL数据库 23篇
  • Maven 1篇
  • MyBatis 11篇
  • Spring 10篇
  • SpringMVC 12篇
  • SpringBoot 15篇
  • 设计模式 5篇
  • 有的没的 5篇

最新评论

  • 算法该不该刷?如何高效刷算法?

    阿J~: 你真棒,能教教我吗

  • hadoop集群启动后datanode没有启动

    2301_79831525: 我有次把三号机不小心初始化了 有事没

  • hadoop集群启动后datanode没有启动

    2301_79831525: 主机的datanode还要删吗

  • 学透Java自增(++)自减(--)运算符,看这一篇就够了!

    执渊之杳: 懂了,又没完全懂,怎么还有栈啊表情包表情包

  • 学透Java自增(++)自减(--)运算符,看这一篇就够了!

    Java大数据运动猿: 你这每个自增符都单独用了一个括号,这跟没用括号没什么区别

最新文章

  • 蓝桥算法双周赛报名开始啦,学习算法技巧,助力蓝桥杯
  • Spark3的新特性
  • 精心整理了20道操作系统高频面试题(建议收藏)
2024年2篇
2023年126篇
2022年379篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家武汉玻璃钢雕塑制作厂家江苏超市商场美陈供应商酒瓶玻璃钢卡通雕塑厂广东室内商场美陈采购专业玻璃钢雕塑优选企业防火玻璃钢雕塑南郊玻璃钢花盆花器商场美陈软装策划方案巩义校园玻璃钢雕塑绍兴玻璃钢仿铜雕塑价格公园玻璃钢雕塑工程西城区商场美陈图纸玻璃钢主题人物雕塑甘南玻璃钢雕塑制作厂家海南玻璃钢雕塑安装呈贡玻璃钢雕塑定做厂家哪里好珠海玻璃钢雕塑生产厂家浙江大型商场美陈商场男装新年美陈市北玻璃钢花盆花器铜陵景区玻璃钢雕塑销售厂家江苏玻璃钢雕塑有哪些潮汕休闲玻璃钢座椅雕塑江苏特色商场美陈售价马村玻璃钢雕塑加工厂家杭州玻璃钢金属雕塑哪家好山西玻璃钢小品雕塑生产公司绍兴专业玻璃钢雕塑白银玻璃钢雕塑制作工厂安康玻璃钢牛雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化