jquery 请求:
$.ajax({
url: '/api/topic/${topic.id}',
type: 'put',
cache: false,
async: false,
dataType: 'json',
headers: {
"token": "${_user.token}",
},
data: {
title: title,
content: content,
tags: tags,
},
success: function (data) {
if (data.code === 200) {
window.location.href = "/topic/" + data.detail.id
} else {
alert(data.description);
}
}
})
后台 controller:
@PutMapping(value = "/api/topic/{id}")
public Result edit(@PathVariable Integer id, String title, String content, String tags) {
System.out.println(title);
System.out.println(content);
System.out.println(tags);
return success();
}
打印出来的结果全是 null,id 是有的
chrome 审查元素看了下,jquery 把 put 和 delete 请求都封装成 form data 后才发送的请求,但就算是 form data 格式的参数在后台也可以接收到的吧!!
求 v2 大佬解惑,万分感谢
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.