前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >get和post的区别

get和post的区别

作者头像
是阿超
发布2021-10-15 16:22:25
发布2021-10-15 16:22:25
7200
举报
文章被收录于专栏:CSDNCSDN

GET和POST是什么

基本概念

GET和POST是 HTTP协议中的两种发送请求的方法

HTTP是什么

HTTP是hypertext transfer protocol(超文本传输协议)的简写, 它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。 客户端连上服务器后,向服务器请求某个web资源,称之为客户端向服务器发送了一个HTTP请求。 一个完整的HTTP请求包括如下内容:一个请求行、若干消息头、以及实体内容 请求方式有:POST、GET、HEAD、OPTIONS、DELETE、TRACE、PUT

HTTP协议实际上是基于RFC规范的,实际上GET和POST请求的语法是完全相同的,但是在RFC规范中,给GET请求和POST请求规定了语义,规定GET用来获取信息,POST用来发送信息

get与post的区别

如果什么前提都没有,也就是不用任何规范限制的话,我们只考虑语法来说,这两个方式是没有任何区别的,只有名字不一样 如果考虑浏览器实现的RFC,或者说Web环境下的RFC的话,那么区别就很明显了

get方式

  1. GET方式是通过URL请求传递用户所输入的内容,其提交的内容会全部显示的浏览器的地址栏中;其安全性很低。如果用户输入的内容包含密码之类的私人信息时很容易被其他人获取
  2. GET方式提交需要用到Request.QueryString来取得变量的值
  3. GET提交具有长度限制,最长不能超过2048字节
  4. GET是从服务器上获取数据
  5. GET是把参数数据队列加到提交表单的action属性所指的URL中,值和表单内容一一对应,在URL中可以看到
  6. 在页面重新刷新载入时,没有提示框询问“是否重新发送请求”
  7. 在做请求时,GET是将表单内容放到信息的请求头中

post方式

  1. POST提交不会将用户所输入的个人信息显示在浏览器的地址栏中且地址栏中没有什么变化
  2. POST方式提交需要用到Request.Form来取得变量的值
  3. POST没有提交长度限制
  4. POST是向服务器传送数据
  5. POST是通过HTTP post机制,将表单内容 中各个字段与其内容旋转在HTML HEADER内一起传送到action属性所批的URL地址。用户是看不到这一过程的
  6. 在页面重新刷新载入时,会有提示框询问“是否重新发送请求”

幂等

幂等的概念

如果一个操作没有副作用,或者多次操作对资源产生的副作用相同,我们就说这个操作是幂等的

区别

get方法用户获取资源,没有副作用,所以是幂等的;

post用于创建资源,是有副作用的,且副作用不同,所以post不是幂等的。(两次相同的POST请求会在服务器端创建两份资源,它们具有不同的URI)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/09/25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • GET和POST是什么
    • 基本概念
  • HTTP是什么
  • get与post的区别
    • get方式
    • post方式
    • 幂等
      • 幂等的概念
      • 区别
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档