首页 新闻 会员 周边

.Net Core Cookie 认证,怎么写入两个 Cookie?

0
[已解决问题] 解决于 2018-06-28 10:01
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
    .AddCookie(options =>
    {
        options.Cookie.Name = "TestCookie1";
        options.LoginPath = new PathString("/Account/Login");
        options.AccessDeniedPath = new PathString("/Account/Denied");
    })
    .AddCookie(options =>
    {
        options.Cookie.Name = "TestCookie2";
        options.LoginPath = new PathString("/Account/Login");
        options.AccessDeniedPath = new PathString("/Account/Denied");
    });

.Net Core Cookie 认证,怎么写入两个 Cookie?上面这样写是不能运行的

大豆男生的主页 大豆男生 | 小虾三级 | 园豆:608
提问于:2018-06-27 16:05
< >
分享
最佳答案
0

Authentication Cookie 是在 HttpContext.SignInAsync() 时写入的,如果你想在 Authentication Cookie 中写入更多信息,可以通过添加 Claim 的方式

claimsIdentity.AddClaim(new Claim(ClaimTypes.NameIdentifier, userId.ToString()));

如果想写入不同名称的 Cookie ,那只能通过 Response.Cookies

context.Response.Cookies.Append(cookieName, cookieValue, cookieOptions);
奖励园豆:5
dudu | 高人七级 |园豆:30994 | 2018-06-27 21:24
其他回答(1)
0

.Net Core Cookie 认证的时候写入多个Cookie 估计是做不到了。

需要另外的 cookie 就自己写吧,简单粗暴:

HttpContext.Response.Cookies.Append("cookie1", "value1");

大豆男生 | 园豆:608 (小虾三级) | 2018-06-27 17:54

Thx

支持(0) 反对(0) 大豆男生 | 园豆:608 (小虾三级) | 2018-06-28 10:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册