我有一个 about.ftl 页面,当我键入 localhost:8080/ui/about 时会调用该页面,并且我已将以下代码块放入其中。通过 SendToServlet() 函数,我试图将用户信息发送到我的控制器,即 OAuthController.java
function SendToServlet(){
$.ajax({
url: "localhost:8080/ui/about",
type: "POST",
data: JSON.stringify({ user:jsonObj}),
contentType: 'application/json',
success: function(result) {
alert(done);
},
error: function(xhRequest, ErrorText, thrownError) {
alert(JSON.stringify(jsonObj));
}
});
}
</script>
我的 Spring MVC Controller 类代码具有以下实现 - 它所做的只是接受用户的信息,然后设置当前用户:
@Controller
@RequestMapping("/about")
public class OAuthController {
@RequestMapping(method = RequestMethod.POST)
@ResponseBody
public String post( @RequestBody String items, HttpServletRequest request, HttpServletResponse response)
{
String jsonResp = items;//sb.toString();
ArrayList<String> usercredentials = new ArrayList<String>();
usercredentials = parseJson(jsonResp);
UserMethods usermethods = new UserMethods();
usermethods.setCurrentUser (usercredentials);
response.setContentType("text/plain");
response.setCharacterEncoding("UTF-8");
return "{\"success\":\"\"}";
}
public ArrayList<String> parseJson(String json){
}
}
我的问题是控制器从未被调用,实际上我从未看到通过 Firebug 将 Post 请求发送到任何地方。我已经花了几天的时间,但仍然没有运气。你有什么建议吗?