简单的ASP.Net Core Razor页面上的HTTP 400

大雾天

我正在尝试创建一个简单的“ Hello world” ASP.Net Core 3.1应用程序,但是尝试发布表单,却不断得到:

此页面无法正常工作。如果问题仍然存在,请与网站所有者联系。

HTTP错误400

重现步骤:

  1. MSVS2019>新建项目> ASP.Net Core Web应用程序,C#

  2. 删除样板,在Pages *中自动生成的代码,替换我自己的Index.cshtml和Index.cshtml.cs

  3. 运行程序。我看到我的表格。

  4. 点击“提交”。我得到HTTP 400。

Pages \ Index.cshtml.cs

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;

namespace HelloUploads.Pages
{
    public class IndexModel : PageModel
    { 
    
        public IActionResult OnGet()
        {
            return Page();
        }

        public IActionResult OnPost()
        {
            return RedirectToPage("./Index");
        }
    }
}

Index.cshtml

@page
@model HelloUploads.Pages.IndexModel
@{
    ViewData["Title"] = "Test";
}

<form method="post">
   <input type="submit" >
</form>

我相信问题很简单。我尝试了许多变体,并且已经敲了好几个小时。

问:我在做什么错?有什么建议?

伦纳多普

您的问题可能是防伪令牌。将@addTagHelper *,Microsoft.AspNetCore.Mvc.TagHelpers添加到页面

@page
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@model HelloUploads.Pages.IndexModel
@{
    ViewData["Title"] = "Test";
}

<form method="post">
   <input type="submit" >
</form>

在添加[ValidateAntiForgeryToken]属性后面的代码上

[ValidateAntiForgeryToken]
public IActionResult OnPost()
{
   return RedirectToPage("./Index");
}

希望它能起作用!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在 ASP.NET Core Razor 页面上显示 PDF?

在 ASP.NET Core Razor Pages 中,如何获取页面上下文之外的页面的视图引擎路径?

ASP .NET Core Razor页面中的授权

ASP.NET Core:防止针对单个操作的自动HTTP 400响应

ASP.NET Core JWT / Windows身份验证HTTP 400错误

在 ASP.NET Core 3.1 中向 HTTP 400 错误请求添加消息

ASP.NET Core Razor页面与完整MVC Core

ASP.NET Core 2.1 Razor页面返回模型页面

清理 ASP.NET Core 的自動 400 響應

错误请求400从Flutter请求ASP.Net Core 3.0

ASP .NET CORE简单参数验证

简单的ASP.NET Core路由问题

简单的注入器注入到PageModel ASP.NET Core Razor Pages中

Asp.net Core Razor页面中的自举警报

使用ASP.NET Core Razor页面实现排序

带参数的ASP.NET Core Razor页面路由

带有Razor页面的ASP .Net Core与UI的Angular

Asp.NET Core MVC Razor页面渲染中的NotSupportedException

ASP.NET Core Razor 页面 - 不绑定 POST 请求

示例AJAX回调到ASP.NET Core Razor页面

在ASP.net Core 3.1 Razor页面中打印PDF

ASP.NET Core 2 razor 页面中的文件上传

从 _layout 发布的 Asp.net Core Razor 页面

Asp.Net Core Razor页面中的远程验证

Asp .Net Core 3.1 Razor页面:复杂模型绑定

基于 asp.net core cliam 的授权抛出“HTTP 错误 400。请求标头的大小太长。” 当设置大量索赔时

在 dot net core razor 页面中 - 您如何在创建页面上默认下拉选项?

ASP.NET Core 3.1 Razor页面:如何自动从“索引”页面重定向到“登录”页面?

ASP.NET文件上传并显示在同一页面上.NET Core 2.1