0

我正在尝试使用 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 {
4

1 回答 1

0

为什么不以调试模式启动服务器,在适当的位置设置断点,看看它是否命中 updateProfileInfo 方法。你需要打http://APPLICATION_NAME/users/ID/profile

如果您使用 firfox 安装 firebug 插件并检查请求/响应。

于 2013-05-06T04:23:45.370 回答