Post,Get接口傻傻分不清?

栏目: 数据库 · 发布时间: 7年前

内容简介:几天前和后端同事探讨接口问题。起因是他给我一个不需要任何数据提交,单纯得到数据的Post接口。引发了我对Post,Get接口的思考。Post,Get接口是我们最常使用的接口。那么那些似乎约定俗成的规则又是怎么来的呢? 他们究竟哪里不同?下面让我们一探究竟吧。

几天前和后端同事探讨接口问题。起因是他给我一个不需要任何数据提交,单纯得到数据的Post接口。引发了我对Post,Get接口的思考。

Post,Get接口是我们最常使用的接口。那么那些似乎约定俗成的规则又是怎么来的呢? 他们究竟哪里不同?

下面让我们一探究竟吧。

接口简介

http协议是基于tcp协议的应用层协议,tcp协议作为可靠的传输层协议,因此http协议也是可靠的。日常开发过程中,最常用的是get post put delete,在http协议的规定中,这四个method属于标准的crud,分别代表了增删改查,存在着语义上的差别。

  1. GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改、增加数据,不会影响资源的内容,即该请求不会产生副作用。无论进行多少次操作,结果都是一样的。

  2. PUT请求是向服务器端发送数据的,从而改变信息,该请求就像数据库的update操作一样,用来修改数据的内容,但是不会增加数据的种类等,也就是说无论进行多少次PUT操作,其结果并没有不同。

  3. POST请求同PUT请求类似,都是向服务器端发送数据的,但是该请求会改变数据的种类等资源,就像数据库的insert操作一样,会创建新的内容。几乎目前所有的提交操作都是用POST请求的。

  4. DELETE请求顾名思义,就是用来删除某一个资源的,该请求就像数据库的delete操作。

简单对比

  1. GET在浏览器回退时是无害的,而POST会再次提交请求。
  2. GET产生的URL地址可以被Bookmark,而POST不可以。
  3. GET请求会被浏览器主动cache,而POST不会,除非手动设置
  4. GET请求的参数会完整的被保存在历史记录里,POST不会。
  5. GET请求参数放在URL中,POST放在request body中。
  6. GET请求只能进行url编码,POST请求支持多种编码方式。
  7. 对于参数类型,GET只接受ASCII字符,而POST没有限制。
  8. GET请求在URL中传递的参数是有长度限制的(理论上就是url的长度),而POST没有。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

智能优化方法

智能优化方法

汪定伟 / 2007-4 / 37.10元

《智能优化方法》主要介绍近年来产生发展的多种智能优化算法。包括为人熟知的遗传算法、禁忌搜索算法、模拟退火算法和蚁群优化算法;近年来已成为研究热点的粒子群优化算法;还有尚待普及的捕食搜索算法和动态环境下的进化计算。书中讨论这些算法的产生和发展、算法的基本思想和理论、基本构成、计算步骤和主要的变形以及数值例子和实际应用。为了方便读者学习,各章之后还附有精选的习题、思考题及相关的参考文献。 本教材......一起来看看 《智能优化方法》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具