首页 > 其他分享 >建议后端接口都使用post请求?是这样吗?

建议后端接口都使用post请求?是这样吗?

时间:2023-10-10 23:23:20浏览次数:30  
标签:请求 get 接口 修改 使用 服务器 post

上篇文章讲到了get、post、put、delete等请求,为何有些公司建议后端接口都使用post请求呢?
首先谈谈个人的拙见,我认为并非都使用post请求就是好的。对于一些简单的查询请求用get也比较合适。为啥用post,有可能我们业务逻辑一开始比较简单,后续添加了很多复杂逻辑,可能查询条件添加了很多,也可能put用于修改,但是这个请求一些不同业务修改操作,restful则是强行统一资源,反而这时候使用post就会合适一些。
上篇文章也讲到了get请求与post请求的区别,临时回顾一下:
1、post更安全(不会作为url的一部分,不会被缓存、保存在服务器日志、以及浏览器浏览记录中)
2、post发送的数据更大(get有url长度限制)
3、post能发送更多的数据类型(get只能发送ASCII字符)
4、post比get慢
5、post用于修改和写入数据,get一般用于搜索排序和筛选之类的操作
6、get请求的是静态资源,则会缓存,如果是数据,则不会缓存
上述区别可以看出,post请求是在请求数据量大的时候使用比较合适,而get请求则是在请求静态资源或者一些简单的查询的时候比较合适。
业内的最佳实践:
1、幂等不修改服务器状态的用GET
2、幂等修改服务器状态的用PUT
3、不幂等修改服务器状态的用POST
总结:由于个人水平有限,目前自己开发接口时也并非按照啥业内最佳实践,目前使用的就是查询使用GET请求,然后其他的使用POST请求(只有少部分单表增删改查啥的才使用restful吧,反正我是用post)

标签:请求,get,接口,修改,使用,服务器,post
From: https://www.cnblogs.com/great-r/p/17755864.html

相关文章

  • ServletContext接口
    第一个:ServletContext接口一个web应用创建一个,实现数据共享步骤1.需要在web.xml中配置,写在<Web-app></web-app>中间<param-name></param-name>写入变量名,<param-value></param-value>写入值<context-param><param-name>name</param-name><param-value......
  • java RestTemplate 发送post请求
    case1:POST,格式:application/json/***采用POST请求,数据格式为application/json,并且返回结果是JSONstring*@paramurl*@param*@return*/publicstaticStringpostForJson(Stringurl,JSONObjectjson){RestTemplaterestTemplate=newRestTemplate(......
  • postgre压力测试
    postgre压力测试基于SysBench介绍SysBench是一个开源的跨平台系统性能基准测试工具,可以这样安装和使用:SysBench支持CPU、内存、磁盘IO、网络IO等系统测试,以及MySQL、PostgreSQL等数据库测试。安装可以从GitHub下载SysBench源码并编译安装:gitclonehttps://......
  • 在ts时使用axios请求类型定义增加属性
    1.需求在后台请求中有一些请求数据量比较大无法一下返回,需要增加loading动画,为了方便控制想在请求的时候增加一个参数isLoading,默认关闭,传真值时开启动画。这便需要拓展axios中增加个性化参数配置。但是如何进行类型的定义呢?2.操作 如上,在做左边增加了isLoading参数,代码......
  • 【接口测试】如何在 Eolink Apilkit 中使用 cookie ?
    什么是Cookie?Cookie是一种在网站之间传递的小型文本文件,用于存储用户的个人信息和偏好设置。当您访问一个网站时,网站会将Cookie存储在您的浏览器中,并在您下次访问该网站时读取该Cookie。这样,网站可以记住您的登录状态、购物车内容以及其他个性化设置。在编写接口自动化测试用......
  • 视频监控系统EasyCVR如何通过API接口获取国标GB28181协议接入的实时录像?
    安防监控视频汇聚平台EasyCVR基于云边端一体化架构,具有强大的数据接入、处理及分发能力,可提供视频监控直播、云端录像、云存储、录像检索与回看、智能告警、平台级联、云台控制、语音对讲、智能分析等功能。平台也提供丰富的API接口供开发者集成、调用与二次开发。今天来介绍下......
  • Java创建PKCS12证书Http请求
    //证书地址publicstaticfinalStringPATH="XX.pfx";//密码publicstaticfinalStringPASSWORD="aaa";publicstaticCloseableHttpClientinitSSLConfig()throwsException{//证书类型KeyStorekeyStore=KeyStore.getInstanc......
  • Jenkins+sonar+jacoco 实现代码扫描,接口测试,代码覆盖
    sonar配置参照往期博文jacoco+自动化测试参照往期博文sonar+jacoco覆盖报告配置# jacoco生成的exec文件sonar.jacoco.reportPaths=/home/jacoco/lXXXXXXXX/lXXXXXXXXX.exec #代码覆盖率插件sonar.java.coveragePlugin=jacoco#jacoco插件版本jacoco.version=0.8.8#s......
  • 【Postman】以命令行形式执行Postman脚本(使用newman)
    以命令行形式执行Postman脚本(使用Newman)目录以命令行形式执行Postman脚本(使用Newman)一、背景二、Newman的安装1、Node.js2、Newman三、脚本准备四、Newman的执行1、run2、变量的使用3、参数化文件4、指定folder五、生成报告1、生成简洁版html报告2、生成加强版html测试报告和Json......
  • ResourceManager处理作业提交请求
    1.背景之前写过Yarn状态机的两篇文章。https://blog.51cto.com/u_15327484/4940200介绍了AsyncDispatcher线程,它提供以下机制:通过调用它的register()方法注册不同类型事件对应的处理器,放入Map中。通过调用它的handle()方法将具体的事件放入到事件队列BlockingQueue中。内部e......