gpt4 book ai didi

c# - Razor Pages Post 返回 400

转载 作者:行者123 更新时间:2023-12-05 03:58:04 25 4
gpt4 key购买 nike

我在索引页面上有一个 ViewComponent,它向另一个页面 LogTransaction 发送帖子。当我发布到 LogTransaction 页面时,它返回 400。我知道该页面已找到,因为当我向 LogTransaction 发出 GET 请求时,它运行良好。但每当我尝试向它发送 POST 时,它都会返回 400。

包含在 localhost:5001/Index 上的 ViewComponent 的 Default.cshtml:

@using BudgetTracker.BudgetSquirrel.Web.Pages

@model BudgetViewModel

...

<form action="/LogTransaction" method="post">
<!-- Inputs Here -->
<button type="submit">Save</button>
</form>

LogTransaction.cshtml.cs

namespace BudgetTracker.BudgetSquirrel.Web.Pages
{
public class LogTransactionModel : BasePageModel // extends PageModel
{
public void OnGet()
{}

public IActionResult OnPost()
{
Console.WriteLine("Hi");
return Page();
}
}
}

LogTransaction.cshtml

@page
@model BudgetTracker.BudgetSquirrel.Web.Pages.LogTransactionModel
@{
ViewData["Title"] = "LogTransaction";
}

当我单击“保存”按钮时,我在/LogTransaction 的 POST 请求中收到 400。我知道它正在查找页面,因为我可以向/LogTransaction 发出成功的 GET 请求。只是发布请求不起作用。

最佳答案

我没有在表单中输入 CSRF token 。您可以手动将其放入,也可以在表单上使用 asp-page 帮助程序而不是操作。该助手会自动将 CSRF token 输入显然地放入

关于c# - Razor Pages Post 返回 400,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58250127/

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