【发布时间】:2013-12-13 14:54:14
【问题描述】:
我有以下有效的代码:
@RequestMapping(value = "/jsonasclass", method = RequestMethod.POST, produces = "application/json")
public @ResponseBody
ContactVO jsonAsClassPost(@RequestBody ContactVO ct){
ct.setFirstName("This-property-is-changed-in-the-controller");
return ct;
}
以及相应的ajax通过post调用:
$.ajax({
url: '/jsonasclass/',
type: 'POST',
dataType: 'json',
data: JSON.stringify({
id:1,
userID:1.1,
login:'sample-login',
firstName:'sample-first-name'
}),
contentType: 'application/json',
mimeType: 'application/json',
success: _callBack,
error: _errorCallback
});
现在我想实现同样的目标,但我想通过 GET 来实现。有人知道怎么做吗?
- 我尝试将 POST 更改为 GET(在控制器和 ajax 调用中),但没有成功。
- 我得到的错误:描述服务器拒绝了这个请求,因为请求实体的格式不受所请求方法的请求资源支持。
【问题讨论】:
-
尝试在 ajax 调用和 @RequestMapping 'method' 属性中更改为 'GET'
-
是的,我在两个地方都改变了。但它没有用。
-
使用 Firebug 跟踪 GET 请求
-
@Floegipoky 是的,但是您将 字符串,而不是对象附加到 URL。他应该将
id、userId等作为字符串传递并使用@PathVariable或@RequestParam注释检索它们
标签: java json spring spring-mvc get