如何处理剃须刀页面中的POST请求

时间:2018-10-13 17:01:38

标签: c# razor

我正在尝试将数据发布到Razor Page,但是从未调用过OnPost。它可以与OnGet一起使用,但不能用于POST(出于某种原因)。

我尝试过定义HttpPost时没有运气。

我使用邮差进行测试。

页面:

@page
@using FFU.Home.Galaxy.Models;

@{
    @functions {
        public void OnPost([FromBody] EmailDataModel model)
        {
            string test = "t";
        }
    }
}

型号:

public class EmailDataModel
{
    public string Name { get; set; }
    public string Value { get; set; }
}

数据:

[{"Name":"Name","Value":"bfdbd"},{"Name":"Email","Value":"bdfk@nvfdk.se"},{"Name":"Content","Value":"vd"}]

2 个答案:

答案 0 :(得分:0)

添加[HttpPost]属性

像这样的帖子请求

   [HttpPost]
    public void OnPost([FromBody] EmailDataModel model)
    {
        string test = "t";
    }

答案 1 :(得分:0)

原来这是防伪令牌的问题。我不需要此网站的功能,因此我添加了IgnoreAntiforgeryTokenAttribute,它可以按预期工作。

NotNullAttribute