ASP.NET 核心 3.1:POST-REDIRECT-GET:传递参数

ASP.NET Core 3.1: POST-REDIRECT-GET: Passing parameters

我正在尝试实施 POST-REDIRECT-GET 技术,其中我 post 一个 JSON 字符串到我的 razor OnPost 方法。这又会重定向到接受该字符串参数的 OnGet 方法。如何将此输入参数字符串隐藏到我的 OnGet 方法中?

编辑:我尝试使用 ViewData,但在我的 OnGet 方法中该值始终为 null,即使我在重定向之前设置它也是如此。

public async Task<IActionResult> OnPostData(string input_JSON)        
{
    TempData["InputJSON"] = input_JSON;
    return RedirectToPage("GetData");
}

public async Task<IActionResult> OnGetGetData()
{
     string tempData = TempData["InputJSON"] as string;
    //do somethig with string;
}

我在我的 javascript 中形成了 post,当新的 window 打开时,我在我的 URL 中看到了 input_string。如何在方法之间传递参数?

https://docs.microsoft.com/en-us/aspnet/core/security/gdpr?view=aspnetcore-2.2#tempdata-provider-and-session-state-cookies-arent-essential

根据 Microsoft 的说法,TempData 提供程序和会话状态 cookie 不是必需的。我必须在我的 Startup.cs 文件的 ConfigureServices:

中使它成为必不可少的
services.Configure<CookieTempDataProviderOptions>(options => {
    options.Cookie.IsEssential = true;
});