gpt4 book ai didi

java - 为什么 success 函数在 spring mvc 中不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 10:05:24 24 4
gpt4 key购买 nike

点击jquery中的提交按钮时,会进行以下ajax调用,但其成功功能不起作用..

                $.ajax({
url: "hai.htm",
type: "POST",
dataType: "application/json",
data:{
name:name,
pass:pass,
},
success: function (data) {
alert("success");
var obj = JSON.parse(data);
alert(obj[0].name);
}
error: function (error) {
alert('error; ' + eval(error));
console.log(error);
}
})

此处显示 Controller 类图像

我的 Controller 类是

package com.safecare.spring;

import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class controller {

@RequestMapping(value = "hai")
public @ResponseBody Map hai(@RequestParam(value = "name",required = false) String name,@RequestParam(value = "pass",required = false) String pass) {
Map ma=new HashMap();
ma.put("name", name);
ma.put("pass", pass);
System.out.println(name);

return ma;

}
}

错误信息如下:“此请求标识的资源只能生成具有根据请求“接受” header Not Acceptable 特征的响应。”

最佳答案

试试这个

@Controller
@RequestMapping("/controllerName")
public class Controller{
@RequestMapping(value="/hai", ... )
public @ResponseBody String hai( ... ) {
JSONObject obj = new JSONObject();
obj.put("name", name);
obj.put("pass", pass);
return obj.toString();
}
}

然后将你的ajax更新为,

               $.ajax({
url: "/ContextPath/controllerName/hai",
type: "POST",
dataType: "json",
data:{
name:name,
pass:pass,
},
success: function (data) {
alert("success");
alert(data.name);
},
error: function(){
alert("Error");
}
});

在网址中将“/ContextPath”替换为您的上下文路径。

关于java - 为什么 success 函数在 spring mvc 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53001296/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com