• Get请求使用请求体传递参数会报400异常的问题


    问题描述:
    前端使用Get请求并且使用请求体传递参数,后端使用@RequestBody注解封装参数,这时会出现400的异常信息。
    解决方法:
    1、Get请求不要使用请求体,使用请求体的话用POST请求。(建议,这样才是正常的规范写法)
    2、保留Get请求与请求体,后端也可以用对象来封装请求体中的参数,但是封装对象需要去掉@RequestBody注解,不然会有400异常。

    触发场景:
    这个问题在用Postman去测试后端接口的时候并没有发现,因为这种情况在Postman中请求是合法的。然后在与前端同学联调接口的时候发现了这个问题。说明这种传递参数的方式在浏览器中并不合法。

    原因
    在http规范任何方法都能发送请求实体。他们报文时没有任何区别的,但是在浏览器中,因为XMLHttpRequest规范的限制,浏览器中ajax发送的http请求,get,delete请求不能携带实体。

    参考
    https://blog.csdn.net/qq_34412985/article/details/108407570
    https://blog.csdn.net/qq_40734247/article/details/107058221


    __EOF__

  • 本文作者: Morning Bell
  • 本文链接: https://www.cnblogs.com/MorningBell/p/16640557.html
  • 关于博主: 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。
  • 版权声明: 本博客所有文章除特别声明外,均采用 CC-BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    Vue+element开发Simple Admin后端管理系统页面
    什么是用来评估神经网络,神经网络的数据预处理
    Koa 中间件使用之 koa-jwt
    Flir Blackfly S USB3 工业相机:白平衡设置方法
    求一篇排除干扰信息对目标检测改进的论文
    惊讶!投资人明目张胆套商业机密;AIGC招聘市场解读;超级个体公开课;如何说服客户购买AI产品 | ShowMeAI日报
    什么是组织孤岛?它会带来哪些影响?可以这样去对付它
    jQuery【事件】
    js实现转义、反转义
    JavaWep开始
  • 原文地址:https://www.cnblogs.com/MorningBell/p/16640557.html