【发布时间】:2014-06-06 20:21:07
【问题描述】:
请注意,这个问题与 #19619088 不同,因为我正在尝试传递纯文本。
这里是 Java 代码:
public @ResponseBody
String decertifyAll(
@RequestParam(value="reason",required=false) String reason,
@RequestParam("id") long id,
final HttpServletRequest request) {
...
这是我的 ajax:
$.ajax({
url: '/dothing',
data: {
id: id,
reason: reason
},
processData: false,
contentType: false,
dataType: 'text',
type: 'POST',
}).done(saveDone)
.fail(saveFail)
;
在萤火虫中,这是被捕获的:
Source
{"id":"1492811","reason":"text"}
但是,我仍然得到错误:
Required long parameter 'id' is not present
奇怪的是,这实际上工作得很好,然后突然停止工作。我不知道为什么。
我的问题是:我需要进行哪些更改才能正确传递这些数据,为什么它找不到我传递的数据并将其放入发布请求中?
我不想将这一切都包装在其他对象中,但如果需要,我会这样做。
【问题讨论】:
-
你有
@RequestMapping(value="/dothing", method=RequestMethod.POST)吗?你为什么使用processData=false?
标签: ajax spring-mvc