gpt4 book ai didi

javascript - ASP MVC 6 AJAX 错误请求

转载 作者:行者123 更新时间:2023-11-28 04:18:50 27 4
gpt4 key购买 nike

我的目的是更新数据库,而无需在用户提交数据时完全重新加载用户所在的当前页面,而只是弹出一个消息框,说明成功或失败,或类似的内容。

我有以下 JS 函数,当用户单击按钮时会调用该函数。

function saveListItem(formID)
{
alert('JS function fired.');
var _form = $('#mainForm' + formID)
var _formData = _form.serialize();

$.ajax({
dataType: "json",
type: "POST",
url: "/Postings/listItemSubmitted",
contentType: "application/json; charset=utf-8",
data: { type: "test" },
success: function () {
alert("success");
},
error: function (xhr, status, error)
{
alert(error.toString());
}
});
}

这是 Controller 操作:

[HttpPost]
[ValidateAntiForgeryToken]
public JsonResult listItemSubmitted([FromBody] string type)
{
type += "!!!";
return Json(type);
}

正如您所看到的,我有一些变量,我稍后打算用它们来实际做一些事情。但现在,我只是想让这个测试发挥作用。问题是 Controller 中的 Action 甚至不会触发。错误警报显示“错误请求”。

我检查了名称,所有名称都是正确的( Controller 是PostingsController.cs,方法名称是listItemSubscribed)。我已经尝试了 URL 语法中单词前后的斜杠的每种组合。我什至尝试过使用 @Url.Action 方法,无论如何它都给了我该字符串,所以我知道它是正确的。

我不知道还能尝试什么。有谁知道这是怎么回事吗?

最佳答案

我认为您在 Controller 中用作过滤器的 ValidateAntiForgeryToken 有问题。您必须将相关的输入值与您的数据一起发送到服务器。尝试删除此过滤器。

关于javascript - ASP MVC 6 AJAX 错误请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45618122/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com