我有一个asp.net mvc 5应用程序,我试图通过实现发送json对象的ajax调用来实现它的现代化。
在我的表单上使用[AntiForgeryToken]标签执行调用时,我收到以下消息:所需的防伪表单字段" __ RequestVerificationToken"不在场。
执行呼叫的代码:
addRequestVerificationToken: function (data) {
data.__RequestVerificationToken = $('input[name=__RequestVerificationToken]').val();
return data;
},
var j = fileUploader.addRequestVerificationToken({ user: formData });
fileUploader.post("/AccountManager/Create/", JSON.stringify(j), function (data) {
console.log(data);
if (data.result === 'success') {
window.location.replace("/AccountManager/");
}
});
$.ajax({
type: type,
url: url,
data: data,
dataType: 'json',
contentType: 'application/json; charset=utf-8',
headers: fileUploader.addRequestVerificationToken({})
})
控制器签名:
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Create(CreateUserViewModel user)
{
}