带有多个参数的 AJAX Post 到 Razor Pages

Aar*_*ron 1 asp.net ajax asp.net-core razor-pages

我正在尝试使用多个参数执行 ajax post 请求。该方法在服务器端调用,但参数返回 null。我在这里做错了什么?我尝试过使用和不使用 JSON.stringify。

.cs 文件:

public async Task<IActionResult> OnPostGenerate(string fname, string lname)
{
    return new JsonResult(fname + lname);
}
Run Code Online (Sandbox Code Playgroud)

AJAX 脚本:

$.ajax({
    type: "POST",
    url: "Index?handler=Generate",
    dataType: "json",
    contentType: "application/json; charset=utf-8",
    headers: {
        RequestVerificationToken:
            $('input:hidden[name="__RequestVerificationToken"]').val()
    },
    data: JSON.stringify({
        fname: "testFirstname",
        lname: "testLastname"
    }),
    success: function (data) {
        alert(data);
    }
});
Run Code Online (Sandbox Code Playgroud)

Yiy*_*You 6

尝试改变

data: JSON.stringify({
        fname: "testFirstname",
        lname: "testLastname"
    }),
Run Code Online (Sandbox Code Playgroud)

data: {
        "fname": "testFirstname",
        "lname": "testLastname"
    },
Run Code Online (Sandbox Code Playgroud)

并删除

contentType: "application/json; charset=utf-8",
Run Code Online (Sandbox Code Playgroud)