cookies - Owin cookie 身份验证设置-cookie 未保存在浏览器中

标签 cookies asp.net-web-api owin katana

我正在此堆栈上构建自托管 Web 服务器: 欧文 南希 网络 API 2

我正在使用 Katana 的 Microsoft.Owin.Security.Cookies 进行类似表单的身份验证。我得到了 Set-Cookie header 作为响应,但 cookie 没有被保存,也没有包含在下一个请求中。所以有什么问题?我做错了什么?

Owin 启动:

app.UseCookieAuthentication(new CookieAuthenticationOptions()
        {
            AuthenticationMode = AuthenticationMode.Active,
            AuthenticationType = "GM",
            CookieHttpOnly = true,
            CookieSecure = CookieSecureOption.SameAsRequest,
            CookiePath = "/",
            CookieName = CookieAuthenticationDefaults.CookiePrefix + "GM",
            CookieDomain = "localhost",
        });

Controller 代码:

var context = Request.GetOwinContext();
context.Authentication.SignIn(new AuthenticationProperties()
    {
        IsPersistent = true
    },
    new ClaimsIdentity(new[] {new Claim(ClaimsIdentity.DefaultNameClaimType, user.Login)}, "GM"));
context.Response.Headers.Add("Location", new []{ "/" });
return Request.CreateResponse(HttpStatusCode.Found);

响应 header :

Cache-Control:no-cache
Content-Length:0
Date:Wed, 11 Sep 2013 11:11:23 GMT
Expires:-1
Location:/
Pragma:no-cache
Server:Microsoft-HTTPAPI/2.0
Set-Cookie:.AspNet.GM=AQAAANCMnd8BFdERjHoAwE_Cl-sBAAAABui2rBibE0yPXB0-v3C06gAAAAACAAAAAAAQZgAAAAEAACAAAAC1mQV3jGo_WAhMQ-hzsmzgkdbdCclWIAX-msbE0_12zQAAAAAOgAAAAAIAACAAAABuQjBg3EJIka151hvBgtlPGfQ2O_cwNI2VVh86dchTDXAAAAD21O9DnNk4yLU9eddVfY3bT9P1CEudNeLvwohkSTAQBP2onuIQfgl9F99Je5waPddckh2llD2kjftSMQPhzgE9vKm-_wE42hXhc9FIgfxpD5AdaeGatwpEcwDfGJJdpQnObX1pbjEFIXLVJxGm5qMUQAAAAC8AiFTaXmzrfRy4-jR6zqMmSKddzddmiBLGClAckWOy6W2YWdf50N2zhIj_MwN8-zi-B0tlv87pzAt-6RDZYZs; domain=localhost; path=/; expires=Wed, 25-Sep-2013 11:11:24 GMT; HttpOnly

最佳答案

我解决了这个问题。这是因为“domain=localhost”。 “localhost”似乎不是域参数的有效值。

关于cookies - Owin cookie 身份验证设置-cookie 未保存在浏览器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18739984/

相关文章:

javascript - 使用自定义javascript后退按钮时删除POST数据

json - 如何在 ASP.NET Core MVC Web API 中格式化 JSON 结果?

c# - WebAPI 中的应用程序服务代码

c# - 使用 OWIN/OIDC 针对 Azure AD B2C 验证自定义 Umbraco Controller

asp.net - 跨域生成并验证 OWIN 用户 token

cookies - 如何在 Jmeter 中生成 cookie 并将其发送到请求中

javascript - 如何在javascript中从cookie中捕获部分数据

session - Flask –具有相同名称的多个 session Cookie

asp.net-mvc - 资源被解释为文档,但使用 MIME 类型应用程序/zip : 传输

c# - 等待 AuthenticationManager.GetExternalLoginInfoAsync() 返回 null