gpt4 book ai didi

asp.net-core-mvc - ControllerBase 中的 SignIn 和 SignOut 方法的用途是什么?

转载 作者:行者123 更新时间:2023-12-03 07:21:51 30 4
gpt4 key购买 nike

SignIn 的目的是什么?和 SignOut ControllerBase中的方法类(由 Controller 类继承)。

这两个方法返回 SignInResult和一个SignOutResult分别继承自基类 ActionResult (它实现了IActionResult)。

查找 SignInResultSignOutResult 的源代码,您会看到它们调用 HttpContext.Authentication.SignInAsync()HttpContext.Authentication.SignOutAsync()分别。

但我从未见过这两种方法在任何地方使用过。如果您查看 AccountController,就会发现它使用 ApplicationSignInManager 登录和退出,而不是上面提到的方法。

由于这些是 ActionResult,它让我相信这些将用作 Controller 中操作的返回值。

例如这样的事情:

public IActionResult SignIn()
{
return SignIn(User, "Automatic");
}

但这显然没有任何作用。它似乎没有登录用户,并且似乎没有向用户返回任何内容。我不确定要传递哪些参数,但我找到了 User (来自 Controller 中的 HttpContext)。

那么这两个方法的目的是什么,以及如何使用它们?

最佳答案

AccountController 使用 ASP.Identity,后者在幕后调用 HttpContext.Authentication.SignInAsync()

对于那些不想使用 ASP.NET Identity 并想自己完成所有事情的人来说,它们很方便。

关于asp.net-core-mvc - ControllerBase 中的 SignIn 和 SignOut 方法的用途是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39963628/

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