Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Ajax响应从spring控制器返回为空,即使它成功了_Java_Ajax_Spring_Controller - Fatal编程技术网

Java Ajax响应从spring控制器返回为空,即使它成功了

Java Ajax响应从spring控制器返回为空,即使它成功了,java,ajax,spring,controller,Java,Ajax,Spring,Controller,我从spring控制器接收到空数据,即使它返回的数据是ajax成功函数接收到的空数据。我尝试直接从控制器返回字符串,如下所示: @ResponseBody @RequestMapping(value = "/test", method = RequestMethod.POST) public String test(@RequestParam("posImsi") String posImsi,@RequestParam("posMsisdn") String posMsisdn){ r

我从spring控制器接收到空数据,即使它返回的数据是ajax成功函数接收到的空数据。我尝试直接从控制器返回字符串,如下所示:

@ResponseBody
@RequestMapping(value = "/test", method = RequestMethod.POST)
public String test(@RequestParam("posImsi") String posImsi,@RequestParam("posMsisdn") String posMsisdn){
    return "success";
}
而ajax是:

$.ajax({
        url : "test",
        type : "POST",
        data : formData,
        beforeSend : function(){
            $("#overlay").show();
        },
        success : function(ajaxResult){
            console.log(ajaxResult);
        },
        complete : function(status) {
        },
        error : function(jqXHR, status, errorThrown) {
            alert(jqXHR);
            alert(status);
            alert(errorThrown);
        }
    });

通过使用XMLHttpRequest对象执行ajax请求,问题得到了解决,我真的不知道有什么区别,但我使用的是:

var x = new XMLHttpRequest();
    x.open("POST","test",true);
    x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    x.send(formData);
    x.onload = function () {
        console.log(this.responseText);
    };

有关XMLHttpRequest对象的更多信息:

您是否在pom.xml中包含了databind maven依赖项?“即使成功”-这是否意味着HTTP成功代码。。。?也许最好添加一些需要的响应和一些作为代码接收的响应,以使其更具可读性?@YasirShabbirChoudhary,是的,我使用了jacksondatabind@Dilettant,我在发送邮件时收到“200HTTP”状态request@Ibrahim试试这个,希望你的问题能解决。下面的链接有助于描述RestController和Controller之间的区别。