【发布时间】:2018-06-30 14:11:16
【问题描述】:
我的页面有...
@page "{candidateId:int}"
...和
@Html.AntiForgeryToken()
模型有...
public void OnGet(int candidateId)
{
}
public void OnPost(int candidateId)
{
}
GET 工作正常。这是我的 AJAX 请求..
$.ajax({
type: "POST",
url: "/Skills/" + candidateId,
beforeSend: function (xhr) {
xhr.setRequestHeader("XSRF-TOKEN",
$('input:hidden[name="__RequestVerificationToken"]').val());
},
data: {
name: 'hi mum'
},
success: function (response) {
},
failure: function (response) {
alert(response);
}
});
浏览器收到无用的错误消息... 400 Bad Request。
我错过了什么?
【问题讨论】:
-
400 错误应该包含更多信息。它向您显示的实际错误是什么?
-
我不认为它与 AJAX 调用有关。
-
但服务器响应将包含更多信息。检查浏览器调试工具。
-
响应选项卡显示“响应没有可用数据”。它实际上只是一个数字和“坏”这个词。 :)
-
查看页面的视图源。您是否生成了
__RequestVerificationToken隐藏输入?
标签: asp.net-mvc razor razor-pages