• bug: @RequestBody注解失效,服务器返回415


    这个问题耽误了我相当长的时间,我已经很难受了,然而,在得知错误原因后,更是难受了。

    首先,问题是这样的,我调用的JQuery的ajax()方法,从前端返回json对象,希望通过@RequestBody为它创建String类型的JAVA Bean对象:

    这是一个415错误,于是我上网查找错误类型:不支持的媒体类型。

    于是我开始修改接收参数的类型:

     我把String pr 换成了productInfo pr 结果竟然还是415,

    于是我开始怀疑前端是不是出了问题:

     我在erro里面设置了显示错误状态码,显示的是error,我把它理解为出错:原因应该是后台程序没有返回值,在程序中加了断点debug一下,果然没有,

    甚至直接跳过断点..看来连程序的入口都没进去?

    由于之前一直没问题,现在又耽误了好久,这时候我开始慌了,难道是找不到这个方法吗?

    url?

    于是我修改了ajax的url参数,改来改去都是一个值404(),不对。

    那只能是@RequestBody来背这个锅了,我很诧异之前他都可以把json对象转换成String 类型的,今天就不行了?

    于是我把它去掉了,

     

     吼吼,415是没了,直接500:

     而且还是第一行的问题,错误显而易见,我需要@RequestBody啊!不然提取不了请求体中的内容,也就不能转换为String类型。

    https://www.cnblogs.com/qq78292959/p/3760651.html

    于是我又把他加上去了,开始直接搜索@Request 415,虽然不是我的问题,但给了我重要提示:

    https://blog.csdn.net/qq_22585453/article/details/78478324

    是配置文件出了问题!

     问题到此为止了,原来是我在了解@ResponseBody注解之前想要转换json格式数据添加的转换器Bean对象,现在已经没有用了,但是我却忘了删。。。他一定对@request默认的转换器产生了影响!

    至此,我明白了一个道理:当你不了解一个东西的时候,不要随随便便复制粘贴他们,而且当问题得到解决时,应该想想对你产生帮助的部分到底是哪些,而没用的代码要立即删除!

  • 相关阅读:
    【NOI2008】志愿者招募
    【NOI2015】小园丁和老司机
    【TJOI2007】小朋友
    【HNOI2008】神奇的国度
    【CTSC2014】企鹅QQ
    【CQOI2014】通配符匹配
    【JSOI2008】火星人
    【SCOI2007】压缩
    【ZJOI2009】对称的正方形
    【LOJ#6066】同构子树
  • 原文地址:https://www.cnblogs.com/learn-with-blog/p/12696827.html
Copyright © 2020-2023  润新知