我正在尝试使用ajax将put发送到控制器。这是我的代码:
$().ready(function(){
$('#submit').click(function(){
var toUrl = '/users/' + $('#id').val() + '/profile';
$.ajax({
url: toUrl,
type: 'PUT',
contentType: 'application/json',
data: JSON.stringfy({name: 'data'}),
dataType: 'json'
});
});
});
那就是我如何抓住这个:
@RequestMapping(method = RequestMethod.PUT, headers = "Content-Type=application/json")
public @ResponseBody String updateProfileInfo(@PathVariable Long id, @RequestBody ProfileForm profileForm){
System.out.println(profileForm.getName());
System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!");
return null;
}
只是想向控制台显示一些内容,以便知道发生了什么事情,我不知道为什么这不起作用。
Ofc我有关于班级的映射:
@RequestMapping(value = "/users/{id}/profile")
public class ProfileController {
答案 0 :(得分:0)
为什么不在调试模式下启动服务器,在适当的位置设置断点并查看它是否达到了updateProfileInfo方法。您需要点击http://APPLICATION_NAME/users/ID/profile
。
如果您使用firfox安装firebug插件并检查请求/响应。