SpringMVC下Ajax请求的方法,@Responsebody如果返回的是布尔值,ajax不会接到任何回传数据

SpringMVC框架下,如果用ajax向后台请求得方法如果使用@Responsebody返回布尔值的话,ajax得不到任何的回传数据。

但是如果返回String类型,就是正常的。

测试了下代码写得没有任何问题,也不报错。只是在地址栏直接输入ajax请求的url会报404.

The resource identified by this request is only capable of generating responses with characteristics not acceptable according to the request "accept" headers ().

确认了代码没有问题之后,问题被锁定在了@Responsebody注解,自动封装返回值上。

各种方法都试过了,比如在url后加.json后缀,导入各种jakson包等等。

重点怀疑是否缺少jar包,于是又把可疑的jar包导入了试验,还是没有成功。

最后看网上的一片其他文章受到了启发,于是升级了下spring的版本。居然成功了!

看来以后遇到这种,代码没有问题,功能上出现问题,而网上资料又少的情况下。应该优先考虑升级版本。

可能是因为这种新功能用的人很少。

我想作为一个成熟的编码者,最先关注的就应该是所在环境的版本号。。。

时间: 2024-08-25 03:52:49

SpringMVC下Ajax请求的方法,@Responsebody如果返回的是布尔值,ajax不会接到任何回传数据的相关文章

AJAX请求 $.post方法的使用

使用jQuery的$.post方法可以以POST形式向服务器发起AJAX请求.$.post方法是jQuery的实用工具方法. $.post( url, [parameter], [callback], [type] ) 参数 注释 url(String) (字符串)服务器端资源地址. data(Map) (对象)需要传递到服务器端的参数. 参数形式为“键/值”. callback(Function)  (函数)在请求完成时被调用.该函数参数依次为响应体和状态. type(String)  (可选

Ajax请求GET方法的封装

function get(url, options, callback){                                        //定义get函数 if(XMLHttpRequest){ var xhr=new XMLHttpRequest(); }else{ var xhr=new ActiveXObject("Microsoft.XMLHTTP"); //兼容ie } xhr .onreadystatechange = function(callback)

解决:jQuery ajax 请求后台方法返回当前aspx源码问题

最近接了个私活,是在原来Asp.Net架构基础上添加一些功能,使用的jQuery是1.6.2版本,废话不多说,直接上代码 前台代码 $.ajax({ type: "POST", url: "MyPhotoList.aspx/btnSelectClick", contentType: "application/json", data: "{'photoName':'" + currentPhotoName + "','

Ajax请求POST方法的封装

function post(url, options, callback){                                           //定义post函数 if(XMLHttpRequest){ var xhr=new XMLHttpRequest(); }else{ var xhr=new ActiveXObject("Microsoft.XMLHTTP");      //兼容ie } xhr .open('POST',url, true); //POS

PHP中检测ajax请求的代码例子

多数情况下,基于JavaScript 的Js框架如jquery.Mootools.Prototype等,在发出Ajax请求指令时,都会发送额外的 HTTP_X_REQUESTED_WITH 头部信息,就当是一个ajax请求,因此你可以在服务器端检测到这些Ajax请求,在PHP中的检测方法如下代码所示: <?php if(!emptyempty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUE

ajax请求后弹开新页面被浏览器拦截

window.open()我想应该很多人都不陌生吧,它可以实现除用a标签以外来实现打开新窗口! 最近开发项目用到时,却遇到了麻烦,本来好好的弹出窗口,结果被浏览器无情的给拦截了! 代码如下: $.getJSON(URL,data,function(data,state){ if(state=='success'){ window.open('http://www.cnblogs.com/garfieldzhong/'); }else{ alert('请求失败!'); } }) 这要手动允许弹出窗

异步ajax请求数据处理

jQuery.ajax(url,[settings]) 概述 通过 HTTP 请求加载远程数据. jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() 返回其创建的 XMLHttpRequest  对象.大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获得更多的灵活性. 最简单的情况下,$.ajax()可以不带任何参数直接使用. 注意,所有的选项都可以通过$.ajaxSetup()函数来全局设置. 回调函数 如果要处理$.aj

struts2 拦截ajax请求,无法跳转问题

用struts2自定义拦截器,拦截下ajax请求,在<global-results>配置返回,会将找到的页面当成ajax响应数据返回页面 另,前端是用ext4.2 不知道到有没有影响 解决方法如下: 直接在返回页面中用window.location.href,在ajax返回页面后,自动跳转 参照csdn大神 现仍在寻找,直接ajax请求,直接result返回页面,未果 希望能直接返回

使用ajax请求后返回数据显示undefinded解决办法

今天在使用七牛的sdk做断点续传时候,当文件过大,本地没有存储时候,想要通过ajax将本地信息存到服务器缓存,之后通过读取缓存的方式来完成文件过大断点续传无法使用问题. 但是在使用ajax请求的时候,发现赋值和请求通过server端都能够请求到.但是请求显示的时候显示仍然是undefined.下面是自己的代码: //查询服务器是否有该值 function getLocalStorage(fileName){ $.ajax({ url : "/live/get-localStorage"