博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计接口使用Post还是Get
阅读量:5923 次
发布时间:2019-06-19

本文共 945 字,大约阅读时间需要 3 分钟。

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没有。

如果您认为阅读这篇博客让您有些收获,欢迎扫描下方二维码关注我们,与我们交流互动。

本公众号专注Java面试题目的收集和解析以及【Web小项目】源码的分享。

转载于:https://juejin.im/post/5cd4f0bef265da038733bc62

你可能感兴趣的文章
1.3一摞烙饼的排序
查看>>
网狐棋牌游戏平台服务器架构设计分析[转]
查看>>
java代码调用使用cxf搭建的webService服务传递对象
查看>>
Spring调用spymemcached客户端的例子
查看>>
Mybatis动态sql和sql片段
查看>>
Java操作Redis DB的例子
查看>>
HLSL中的MUL指令深层剖析
查看>>
使用批处理批量删除不同文件夹下的同名文件
查看>>
[收藏学习]gcc和g++
查看>>
fuser命令详解(原创)
查看>>
linux下/dev/shm的大小引发ORA-00845: MEMORY_TARGET not supported on this system 2015-06-16 08:55:50...
查看>>
mac下无法识别手机usb问题
查看>>
iOS设计模式 - 命令
查看>>
IOS中DES与MD5加密方案
查看>>
栈的表示和实现
查看>>
2015年终总结
查看>>
图像平均及其在降噪方面的应用
查看>>
OAuth 2.0系列教程(九) 契约请求和响应
查看>>
ZooKeeper源码研究系列(2)客户端创建连接过程分析
查看>>
【BBED】使用bbed解决 the amount of space used is not equal to block size
查看>>