POST请求查询参数神奇失效的一次神奇bug之旅

出现场景:

某日我看着GET请求的参数逐渐变多,想个改成POST请求得了,这样body传参美观又方便,于是接口从GET变成了POST,然后查询参数就莫名其妙的就全部失效了,接口也没有报错,就参数失效了,查询了全部数据。

发现问题过程:

自己捣鼓了半天没发现异常,然后删除了一些前端查询参数,结果查询条件突然生效了,那导致查询生效的参数就一定是在自己刚刚删除的参数里面,通过对比发现后端定义的时间类型是Date的参数被前端传了个数组类型,主要它不报错呀,直接使全部查询参数失效了,debug看传进去的body对应是实体里面只有Integer类型的值还在,其他全为null了,真想骂人啊,要是其他类型传错了参数格式,它是会报错了,可是上述的场景就是不会。

教训:

尽量别使用Date来接收参数,容易踩坑,当出现其他查询参数失效的时候,检查下是不是Date对应的传参被传了个数组进来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/873558.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vscode搭建PyQt + Quick开发环境

VScode搭建PyQt Quick开发环境 目录 环境准备 🔔安装必要的Python包 🔔🔎 PyQt5和PySide2的区别💾 安装PyQt5💾 安装PySide2 配置VScode 🔔💻 安装扩展 代码示例 🔔✔ Python调用Qt…

【Django】django自带后台管理系统样式错乱,uwsgi启动css格式消失的问题

正常情况: ERROR:(css、js文件加载失败) 问题:CSS加载的样式没有了,原因:使用了django自带的admin,在使用 python manage.py runserver启动 的时候,可以加载到admin的文…

如何学习Spark:糙快猛的大数据之旅

作为一名大数据开发者,我深知学习Spark的重要性。今天,我想和大家分享一下我的Spark学习心得,希望能够帮助到正在学习或准备学习Spark的朋友们。 目录 Spark是什么?学习Spark的"糙快猛"之道1. 不要追求完美,在实践中学习2. 利用大模型作为24小时助教3. 根据自己的节…

golang实现的ab测试http代理工具

压测工具ab不能统计http请求的错误情况,包括http状态码错误和响应正文的错误关键字。 所以加层代理用于统计http错误情况,重在统计错误情况,而不是代理的性能,主要用于功能接口的测试,比如测试一下请求多少次接口会返…

无人机的发展前景大吗?

随着科技的飞速发展,无人机(Unmanned Aerial Vehicle, UAV)作为一种新兴的航空器,已逐渐从军事领域渗透到民用领域。无人机的应用广泛,包括但不限于航拍、物流配送、环境监测、农业植保、应急救援等多个领域。本文旨在…

pip如何获取项目有关的所有whl文件并批量进行安装

获取项目所需 whl 导出项目的依赖列表: 首先,需要导出项目所需的依赖列表。可以使用 pip 的 freeze 命令来实现这一点。 pip freeze > requirements.txt这会将当前环境中所有已安装的包及其版本信息导出到 requirements.txt 文件中。 下载 .whl 文件…

Chromium CI/CD 之Jenkins实用指南2024-在Windows节点上创建任务(九)

1. 引言 在现代软件开发流程中,持续集成(CI)和持续交付(CD)已成为确保代码质量和加速发布周期的关键实践。Jenkins作为一款广泛应用的开源自动化服务器,通过其强大的插件生态系统和灵活的配置选项&#xf…

十七、【机器学习】【非监督学习】- K-均值 (K-Means)

系列文章目录 第一章 【机器学习】初识机器学习 第二章 【机器学习】【监督学习】- 逻辑回归算法 (Logistic Regression) 第三章 【机器学习】【监督学习】- 支持向量机 (SVM) 第四章【机器学习】【监督学习】- K-近邻算法 (K-NN) 第五章【机器学习】【监督学习】- 决策树…

opencv 使用XML和YAML格式来输入输出文件

源码 链接 link #include <opencv2/core.hpp> #include <iostream> #include <string>using namespace cv; using namespace std;// 帮助信息函数 static void help(char** av) {cout << endl<< av[0] << " shows the usage of the…

Java 新手学习线路,Java 学习路线是怎样的?

学习Java是一条漫长但有趣的道路。作为一门面向对象编程语言&#xff0c;Java不仅在企业级开发中占据重要地位&#xff0c;还在移动开发、大数据、人工智能等领域有着广泛应用。下面&#xff0c;我将从基础到高级&#xff0c;详细介绍Java学习线路图&#xff0c;帮助新手一步步…

静态代理与动态代理的区别与选择

在当今软件开发领域&#xff0c;代理模式作为一种重要的设计模式&#xff0c;广泛应用于增强现有对象功能、控制访问权限以及实现远程调用等场景。本文旨在深入探讨静态代理与动态代理之间的核心区别&#xff0c;帮助开发者理解两者在实现机制、灵活性、性能表现及适用场景上的…

Filebeat k8s 部署(Deployment)采集 PVC 日志发送至 Kafka——日志处理(二)

文章目录 前言Filebeat Configmap 配置Filebeat Deployment验证总结 前言 在上篇文章中总结了 Django 日志控制台输出、文件写入按天拆分文件&#xff0c;自定义 Filter 增加 trace_id 以及过滤——日志处理&#xff08;一)&#xff0c;将日志以 JSON 格式写入日志文件。我们的…

无人机侦察:二维机扫雷达探测设备技术详解

二维机扫雷达探测设备采用机械扫描方式&#xff0c;通过天线在水平方向和垂直方向上的转动&#xff0c;实现对目标空域的全方位扫描。雷达发射机发射电磁波信号&#xff0c;遇到目标后产生反射&#xff0c;反射信号被雷达接收机接收并处理&#xff0c;进而得到目标的位置、速度…

调用第三方接口-RestTemplate

调用方式 POST请求单个新增批量新增 GET请求1.含PathVariable2.查询列表 POST请求 单个新增 例如后端接口接收参数为 User user 使用RestTemplate发送post请求&#xff0c;暂未进行异常处理 //封装body信息 JsonObject jsonObject new JsonObject(); jsonObject.put("…

Webpack基础学习-Day01

Webpack基础学习-Day01 1.1 webpack 是什么 webpack 是一种前端资源构建工具&#xff0c;一个静态模块打包器(module bundler)。 在 webpack 看来, 前端的所有资源文件(js/json/css/img/less/…)都会作为模块处理。 它将根据模块的依赖关系进行静态分析&#xff0c;打包生成…

spring MVC 简单的案例(2)用户登录

一、用户登录 1&#xff09;前端代码 index.html <!doctype html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport"content"widthdevice-width, user-scalableno, initial-scale1.0, maxim…

git commit报错: pre-commit hook failed (add --no-verify to bypass)

原因&#xff1a; 在提交前做代码风格检查&#xff0c;若检查不通过&#xff0c;则提交失败 解决方案&#xff1a;进入项目的.git>hooks目录&#xff0c;找到pre-commit文件&#xff0c;删除即可

solr配置(关联数据库,自动从数据库更新数据到solr)

配置mysql的关联 需要使用mysql作为数据源&#xff0c;我们需要增加对mysql使用的jar包 server/solr-webapp/webapp/WEB-INF/lib/ Data-config.xml Name为对应solr中的Entity Query为第一次查询数据库的数据&#xff0c;格式为sql语句。 数据库自动更新到solr上&#xff1a;de…

深入探索Perl中的函数定义与调用机制

Perl是一种功能强大的脚本语言&#xff0c;广泛用于文本处理、系统管理任务、网络编程等领域。Perl的函数是实现代码重用和模块化的关键&#xff0c;它们允许你将一段代码封装起来&#xff0c;以便在程序中多次调用。本文将详细介绍Perl中如何定义和调用函数&#xff0c;以及一…

29. python装饰器

装饰器 装饰器一. 简单的装饰器二. 带参数的装饰器 装饰器 类似于java的切面&#xff0c; 再不更改原函数代码的前提下&#xff0c;动态做一些动作。 一. 简单的装饰器 def logging(func):def wrapper(*args, **kwargs):print("logging is running",filesys.stder…