解决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("网络错误"); } })

解决ajax请求(SpringMVC后台)响应415/400/405错误的更多相关文章

  1. http 500 Internal Server Error的错误 ajax请求SpringMVC后台中返回500 Internal Server Error

    使用httprequester接口测试能返回数据,但是用ajax返回json格式的时候返回报500Internal Server Error. The server encountered an in ...

  2. 解决Ajax请求跨域问题

    from:https://blog.csdn.net/wang379275614/article/details/53333775 上篇文章提到,由于浏览器的同源策略,使得,AJAX请求只能发给同源的 ...

  3. Jquery progressbar通过Ajax请求获取后台进度演示

    项目源代码下载:http://download.csdn.net/detail/nuptboyzhb/6262253 1.简介 本文主要演示Jquery progressbar的进度条功能.js通过a ...

  4. 解决Ajax请求后台Servlet接口拿不到JSON数据问题

    前端Ajax请求代码如下: window.onload=function() { var url='http://127.0.0.1:8080/testpj/ErrorlogServlet'; $.a ...

  5. 使用ajax请求SpringMVC返回Json出现乱码解决方法

    1:在使用ajax请求后台访问数据的数据,后台返回的数据是乱码,带??问号的乱码,之前还一直没有遇到过,在这里记录整理一下,贴出解决代码! (1):前台使用ajax ,已经设定返回的结果为json格式 ...

  6. 解决ajax请求跨域

    跨域大部分需要通过后台解决,引起跨域的原因: 3个问题同时满足 才可能产生跨域问题,即跨域(协议,主机名,端口号中有一个不同就产生跨域) 下面是解决方法 方法一 // ajax请求跨域 /* *解决a ...

  7. 解决ajax请求cors跨域问题

    ”已阻止跨源请求:同源策略禁止读取位于 ***** 的远程资源.(原因:CORS 头缺少 'Access-Control-Allow-Origin').“ ”已阻止跨源请求:同源策略禁止读取位于 ** ...

  8. 解决Ajax请求时无法重定向的问题

    今天发现,当使用Ajax请求时,如果后台进行重定向到其他页面时是无法成功的,只能在浏览器地址栏输入才能够实现重定向. Ajax默认就是不支持重定向的,它是局部刷新,不重新加载页面. 需要实现的功能是, ...

  9. jQuery解决ajax请求的跨域问题

    这两天工作中频繁的遇到JS的跨域问题,都通过绕开ajax请求的方式.特地百度了一下,把跨域问题解决了.在这分析一下 首先贴上js的页面代码: <html> <head> < ...

随机推荐

  1. Tesseract-OCR-04-使用 jTessBoxEditor 进行训练

    Tesseract-OCR-04-使用 jTessBoxEditor 进行训练 本篇是关于 jTessBoxEditor 进行训练,使 Tesseract-OCR 文字识别准确率得到极大的提高,本篇完 ...

  2. 遍历查询结果集,update数据

    select NULL mykey, * into #mytemp from dbo.DIM_DISTRIBUTOR declare @i int begin ) print @i )) where ...

  3. QT的组件布局

    在QT的IDE下,编写一个自定义布局. #include<QApplication> #include<QWidget> #include<QSpinBox> #i ...

  4. Python学习---网络文件上传

    中心思想: 传递过去文件的大小,根据文件的大小判断是否文件上传完成: 传递/接受文件采用分流的形式,每次传递/接受部分数据:  文件的读取均采用绝对路径实现,而且是bytes的形式读写 客户端: # ...

  5. echarts tooltip太多会超出显示范围-解决

    以下两种解决方式,能够应对大部分出现此类问题项目 tooltip.position: 提示框浮层的位置,默认不设置时位置会跟随鼠标的位置. 可选:string, Array, Function 一.解 ...

  6. 合并两个数组 以KEY 作为键

    <?php     $a= array(         array(             'ID'=> 2         ) );   $b= array(         arr ...

  7. NFS-heartbeat-drbd模拟NFS高可用

    NFS介绍: NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS ...

  8. java IO流 总结

    [-] 1什么是IO 2数据流的基本概念 1 数据流 2 输入流Input  Stream 3 输出流 数据流分类 3 标准IO 命令行参数 标准输入输出数据流 4javaIO层次体系结构 5 非流式 ...

  9. Sql的一些常规判断

    sql server中如何判断表或者数据库的存在,但在实际使用中,需判断Status状态位:其中某些状态位可由用户使用 sp_dboption(read only.dbo use only.singl ...

  10. MATLAB入门学习(五)

    现在,我们来学画图吧.╭( ・ㅂ・)و ̑̑ 绘制函数图像最常用的命令是plot plot(x,y,s)x,y为同维向量,绘制分别以x为横坐标,y为纵坐标的曲线 如果x y 是矩阵的话则会绘制多条曲线 ...