gpt4 book ai didi

c# - 在 Request.Cookies 中找不到 .ASPXAUTH Cookie

转载 作者:行者123 更新时间:2023-11-30 17:54:19 27 4
gpt4 key购买 nike

我正在创建一个托管在启用了表单例份验证的网站下的 Web 应用程序。我在我的身份验证数据库“Admins”中有一个角色。这是我的 Controller 代码:

[RequireHttps]
[Authorize(Roles = "Admins")]
public ActionResult Index()
{
return this.View();
}

当我转到索引页面时,如果我未通过身份验证,它会将我重定向到我输入凭据的登录页面。登录页面然后重定向回新应用程序的索引页面,但 Controller 无法识别用户已通过身份验证。

我已经取消了 Authorize 属性,并在 Chrome 开发者控制台中查看请求并确认确实发送了 cookie。但是,如果我按原样保留 Authorize 属性并转到索引页面,则我的 Controller 中请求的 cookie 集合为空。 header 集合包含一个名为“Cookie”的 header , header 的值包含 .ASPXAUTH cookie。

登录页面使用以下代码调用登录:

FormsAuthentication.SetAuthCookie(userName, remember, "/");

此行为可在所有主要浏览器中重现。

我该怎么做才能填充请求的 Cookie 集合?
我需要做什么才能使应用程序意识到用户确实已通过身份验证?

编辑:
我仍然没有让它工作,但我很确定它与被过滤的 ASPXAUTH cookie 有关。

最佳答案

我确信这个问题有多种原因。在我的例子中,问题是我用来编写 cookie 的 MVC 版本与解密它的版本不同。我将我的站点更改为全部运行 MVC 4,并且一个站点创建的 cookie 可供另一个站点使用。

关于c# - 在 Request.Cookies 中找不到 .ASPXAUTH Cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16113757/

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