Fork me on GitHub

解决ajax请求(SpringMVC后台)响应415/400/405错误

解决ajax请求(SpringMVC后台)响应415/400/405错误

后端代码

  • bean

    
     public class user {
    
         private String username;
    
         private String password;
    
         private Integer age;
    
     //省略get set
    
    }
    
  • SpringMVC

    
       	@RequestMapping(value = "testMethod",method = RequestMethod.POST)
              
         @ResponseBody
        
        public String getUser(@RequestBody user u){
        
            System.out.println(u);
    
                return "success";
        }
    
    

415错误

没有设置 contentType: "application/json"

  • ajax

    $.ajax({
    
        url:baseurl+"test/testMethod",
       
         type:"POST",
    
        data:JSON.stringify({
    
            "username":"user666",
    
            "password":"a123456",
    
            "age":19
    
        }),
        success:function (res) {
    
            console.log(res);
    
        },
    
            error:function () {
    
            console.log("网络错误");
    
            }
    
        })
    
  • 原因

    
    //没有设置contentType: "application/json",
    
    //更正之后
    
    $.ajax({
    
        url:baseurl+"test/testMethod",
    
        type:"POST",
    
    	contentType: "application/json",
    
        data:JSON.stringify({
    
            "username":"user666",
    
            "password":"a123456",
    
            "age":19
    
        }),
    
        success:function (res) {
    
            console.log(res);
    
        },
    
        error:function () {
    
            console.log("网络错误");
    
        }
    
    })
    
    

400错误

没有对传输的内容进行格式化 JSON.stringify(jsonobj)

  • ajax

    
    $.ajax({
    
        url:baseurl+"test/testMethod",
    
        type:"POST",
    
    	contentType: "application/json",
    
        data:{
    
            "username":"user666",
    
            "password":"a123456",
    
            "age":19
    
        },
    
        success:function (res) {
    
            console.log(res);
    
        },
    
        error:function () {
    
            console.log("网络错误");
    
        }
    
    })
    
  • 原因

    
    //没有对传输的数据进行转换为JSON字符串JSON.stringify(jsonobj)
    
    //更正之后
    $.ajax({
    
        url:baseurl+"test/testMethod",
    
        type:"POST",
    
    	contentType: "application/json",
    
        data:JSON.stringify({
    
            "username":"user666",
    
            "password":"a123456",
    
            "age":19
    
        }),
    
        success:function (res) {
    
            console.log(res);
    
        },
    
        error:function () {
    
            console.log("网络错误");
    
        }
    
    })
    

405错误

通常是type 请求类型设置与后端所限制的请求不一致

  • ajax

    
    $.ajax({
    
        url:baseurl+"test/testMethod",
    
        type:"GET",
    
    	contentType: "application/json",
    
        data:JSON.stringify({
    
            "username":"user666",
    
            "password":"a123456",
    
            "age":19
    
        }),
    
        success:function (res) {
    
            console.log(res);
    
        },
    
        error:function () {
            console.log("网络错误");
    
        }
    
        })
    
    
  • 原因

    
    //请求类型与后端设置的不一致 正确应为 type:"POST"
    
    //更正之后
    
    $.ajax({
    
        url:baseurl+"test/testMethod",
    
        type:"POST",
    
    	contentType: "application/json",
    
        data:JSON.stringify({
    
            "username":"user666",
    
            "password":"a123456",
    
            "age":19
    
        }),
    
        success:function (res) {
    
            console.log(res);
    
        },
    
        error:function () {
    
            console.log("网络错误");
    
        }
    
    })
    
    
posted @   粥里有勺糖  阅读(2079)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示