繁体   English   中英

ASP MVC 6 AJAX错误请求

[英]ASP MVC 6 AJAX Bad Request

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

我有以下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());
        }
    });
}

这是控制器动作:

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

如您所见,我有一些变量供以后实际使用。 但就目前而言,我只是试图使此测试起作用。 问题在于控制器中的动作甚至不会触发。 错误警告提示我“错误请求”。

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

我不知道还能尝试什么。 有人知道发生了什么吗?

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM