原文地址: https://blog.csdn.net/lw1242189467/article/details/80048407

首先,遇到400问题,最大几率是出现了数据类型不一致的问题,简单来说是Controller层不用正确读取你发送请求附带的参数。该例是我前端传送JSON格式,使用postmen接收。
一.发现400错误的,第一步确认postmen中发送的数据类型是json。比如Headers中Content-Type类型是application/json;或是前端代码Ajax中添加:contentType: ‘application/json;charset=UTF-8’(如图);


二.第一步确认postmen中发送的数据格式是否正确。postmen中经常有人有漏写一对“{}“或是缺少逗号,引号,冒号的小问,好在postmen会自动报错提示; 而在前端中你必须重新包装传入参数为JSON型。使用JSON.stringify(params)将params参数重新包装;

三.正常解决以上两个问题,多数人错误也该解决了。如果还没有,我们就要在Controller接收处查找问题。

顺带一说:前端用json传入,后端如果用对象接收,及时传入变量名与该对象的属性名对应上,也不会自动封装进去,当然也不会直接报错。如果想json型自动转换成对象,需要在对象前面添加@RequestBody注解。它会将JSON进行转换成为你指定的对象。

但是我个人更喜欢用JSONObeject或Strng去接受,在用手动将它转化为我需要的对象,因为我传入的对象可能是嵌套好的,其中有一个对象,还有其他对象的List。在头部自动转化就会出现一些问题。

言归正传,第三个可能出现400的问题就在这。使用RequestBody转化成String时,意外报错,类型不匹配。这一点也是我万万没想到的。因为之前一个项目基本都是用String在接收前端的JSONO对象。这次却卡在400处。解决的方案很简单,使用JSONObject原原本本的接收JSON对象!直接使用!可正常情况String接收也是可以的,这点让我很费解,花了不少时间也没能找到原因。可能是注解的配置问题,又或者是因为使用SSM和springBoot框架的差异。

接口报400错误解析相关推荐

  1. 学习笔记——请求接口报400错误

    问题: 在请求接口时报了400错误, 400错误是请求时传过去的数据参数或者格式发生错误导致的.传递过去的是一种类似数组结构的数据.后台需要通过特殊的编码方式才能解析. 1.解决: 请求接口传值的时候 ...

  2. http请求报400错误

    前端请求时,接口报400错误,逻辑没有进后端的断点,甚至连接口都没进,swagger自测可行,那么问题势必出在前端传参上,前端封装的入参肯定和后端定义的入参实体有类型不对应的字段,果然,后端定义的是i ...

  3. nginx 反向代理报400错误

    问题描述: 为后端接口配置了nginx反向代理后,请求后端接口时报400错误. 度娘了下说是后端服务器做了安全处理,可能对http请求头中的host字段进行了判断,如果缺乏host字段或host值不正 ...

  4. 微信上传图文素材接口报41005错误解决方法

    微信上传图文素材接口报41005错误解决方法 参考文章: (1)微信上传图文素材接口报41005错误解决方法 (2)https://www.cnblogs.com/gy1010/p/6674529.h ...

  5. 接口报错500是什么意思_一次排查服务器端接口报500错误的经历

    1 出现问题情景 该问题来自我实习期间完成的一个博客后端系统,具体如下:当我辛辛苦苦在编辑器里完成文章格式修改(字数较多,一般大于3000字:字数较少时不会出现问题),以及相关目录和标签的选定,点击提 ...

  6. 前端post请求报400错误

    前端post请求报400错误 发布时间: 2019-06-05 18:28:54 400的错误是由于发送请求参数没有成功 原因:参数名称类型没有对上:或者参数格式不正确 参数格式不正确,解决方法:格式 ...

  7. JavaWeb项目报400错误

    JavaWeb项目报400错误 页面会出现 post auth not correct,后台提示 dispacherServlet ....... 1.页面请求参数类型. 2.服务器端参数类型不匹配.

  8. 前端发送请求到后端报400错误问题

    一般情况下,前端发送请求到后端,报400是由于前后端json对象中的属性名与后端接收请求的实体类的属性名不对应(完全相同)引起的.排除400错误的方法如下: 1.前端发送的属性名和后端实体类的属性名不 ...

  9. 前端请求接口报405错误

    前端报405错误,我个人遇到的问题:当时在写一个文件上传的时候,接口参数没有问题,但是报的是405错误,后来发现是请求头里 Content-type 属性没忘记加了

最新文章

  1. 爬虫之requests模块超时参数timeout的使用
  2. String 堆内存和栈内存
  3. Hadoop学习笔记—4.初识MapReduce
  4. python函数后面有多个括号怎么理解?
  5. 为什么需要用户自定义类加载器及具体实现
  6. 下载的java游戏怎么运行不了_java运行环境下载
  7. python控件随窗口变化而适配_Tkinter窗口/控件比例调整
  8. 数据库查询经常卡死?面对亿级大数据量,我是这么展示分析的
  9. 信息学奥赛C++语言:数字反转
  10. JAVA学生信息管理系统IO流版
  11. 操作class属性的新API--classList
  12. html一行显示四个图片,css一行显示之:实现多个图片一行显示的方法
  13. JavaWeb 基础系列篇
  14. 为什么浏览器的用户代理字符串以 Mozilla 开头?
  15. NBA历史上50大巨星2
  16. 如何打造一份it项目计划书
  17. 哈工大2022计统大作业
  18. matlab 二维矩形函数,科学网—利用MATLAB对非矩形域实现二维插值 - 张乐乐的博文...
  19. C++面向对象程序设计大作业:魔兽世界(三):开战
  20. 安卓开发无线连接设备进行调试(adb)

热门文章

  1. mysql中字符串和时间相互转换的方法
  2. coreldraw铺花纹_CorelDRAW制作花边的详细步骤
  3. 换脸已不算事儿 能换整个身体的AI伪造技术马上就来了!
  4. 择天记服务器维护中,24天击碎全服封印《择天记OL》后续精彩揭秘
  5. oracle dba常用命令
  6. 单片机led灯闪烁实验总结_单片机很好玩3,花三分钟,使用普通LED小灯,制作手机“呼吸灯”...
  7. .split(“,“, -1) 和 .split(“,“) 的区别
  8. oppo计算机隐藏功能介绍,OPPO手机隐藏功能:大部分不清楚,OPPO原来还能这么玩...
  9. MD5碰撞后时代,MD5加密真的安全吗
  10. python 常用标准库