【发布时间】:2018-01-30 03:35:47
【问题描述】:
我正在学习 Spring MVC,我一直坚持如何使用 AJAX 从客户端发送一个简单的字符串值并在 JAVA 服务器(控制器)上打印它。我写了下面的代码来做到这一点。但是当我点击按钮发送字符串时,error.... 响应在我的浏览器中弹出,浏览器控制台显示POST http://localhost:8090/addUser 404 ()。自从我试图解决这个问题以来已经有一天了。有人可以告诉我可能是什么问题吗?或者请告诉一个可行的替代解决方案,用于使用 AJAX 从客户端发送数据并将其打印/保存在 JAVA 服务器(Spring-MVC)上。
UserController.java
@Controller
public class UserController {
@RequestMapping(value = "/addUser", method = RequestMethod.POST, consumes=MediaType.APPLICATION_JSON_VALUE, produces=MediaType.APPLICATION_JSON_VALUE)
public JSONArray addUser(@ModelAttribute("UserTest") JSONArray name) {
System.out.println(name.toString());
return name;
}
}
AJAX 请求:
<script>
function addUser() {
var json = '{"uname":"John", "Age":42}';
obj = JSON.parse(json);
$.ajax({
url : "/addUser",
data : obj,
type : "POST",
async: false,
contentType: "application/json",
success : function(response) {
alert( response );
},
error : function() {
alert("error...."); //this is being popped-up in my browser
}
});
}
</script>
【问题讨论】:
-
如果您使用 jsp 进行查看,请将 url 更改为
url:'${pageContext.request.contextPath}/addUser'
标签: javascript java ajax spring spring-mvc