我目前有一个 ajax 请求设置来向我的 mvc 4 项目中的 web api 发送“PUT”请求。我的请求能够进入 api 上的方法,但参数始终为空。任何想法为什么?我还检查了 PUT 请求的执行情况,它确实为每个表单控件发送了一串键/值对。这是我的代码:
Web Api 方法(选择始终为空)
public void Put([FromBody]string selection)
{
}
更新:
我忘了我自己在做一点调试。我已经确认,当您序列化表单时,参数被命名为“选择”。请再看看。
阿贾克斯调用:
$.ajax({
type: "PUT",
url: urlPrefix + "api/file/Manipulate",
data: $("#frmManipulate").serialize(),
contentType: "application/json; charset=utf-8",
dataType: "json",
statusCode: {
204: function (jqXHR) {
alert("No file(s)/Directory(s) were selected.");
}
}
}).done(function () {
location.reload();
});