Asp.net Core的Cookie使用

.net core下可以使用普通的cookie也可以使用加密的cookie,普通的cookie的使用

需要继承Controller里使用

写入Cookie 

Response.Cookies.Append("password", "123456");

读取Cookie

string s;
Request.Cookies.TryGetValue("password", out s);

删除Cookie

Response.Cookies.Delete(key)

这里注意下,写人和删除操作是Response,读取和删除是Request

还有需要注意点是,如果要单独写个类的话一定需要继承Controller才可以使用不然操作不了Cookie,并不像.net framework那样可以通过httpcontext.current来操作cookie,这点要注意我刚开始自定义了一个cookie操作类就碰到这个问题了。

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET Core Blazor Server 应用程序可以使用 ASP.NET Core 身份验证中间件来实现基于 Cookie 的登录认证。以下是实现此功能的基本步骤: 1. 在 Startup.cs 文件的 ConfigureServices 方法中添加身份验证服务: ``` services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme) .AddCookie(options => { options.LoginPath = "/Login"; options.LogoutPath = "/Logout"; options.Cookie.Name = "MyAppCookie"; options.Cookie.HttpOnly = true; options.Cookie.SameSite = SameSiteMode.Strict; options.Cookie.SecurePolicy = CookieSecurePolicy.Always; options.SlidingExpiration = true; }); ``` 在上面的代码中,我们使用 AddCookie 方法添加了基于 Cookie 的身份验证方案,并设置了一些选项。其中,LoginPath 和 LogoutPath 分别指定了登录和注销的 URL,Cookie.Name 设置了 Cookie 的名称,Cookie.HttpOnly 和 Cookie.SameSite 分别设置了 Cookie 的安全选项,Cookie.SecurePolicy 设置了 Cookie 的安全协议,SlidingExpiration 启用了滑动过期时间。 2. 在 Configure 方法中启用身份验证中间件: ``` app.UseAuthentication(); ``` 3. 在登录页面或组件中使用 SignInManager 和 UserManager 进行身份验证: ``` var result = await _signInManager.PasswordSignInAsync(username, password, rememberMe, lockoutOnFailure: false); if (result.Succeeded) { return RedirectToPage("/Index"); } else { ModelState.AddModelError(string.Empty, "用户名或密码不正确。"); return Page(); } ``` 在上面的代码中,我们使用 PasswordSignInAsync 方法验证用户的用户名和密码,并在验证通过后重定向到主页。 4. 在需要验证的页面或组件上使用 AuthorizeView 组件: ``` <AuthorizeView> <Authorized> <!-- 显示受保护的内容 --> </Authorized> <NotAuthorized> <p>请先登录。</p> <a href="/Login">登录</a> </NotAuthorized> </AuthorizeView> ``` 在上面的代码中,我们使用 AuthorizeView 组件来判断用户是否已经登录。如果已经登录,就显示受保护的内容;如果没有登录,就显示一个提示信息和登录链接。 以上是在 ASP.NET Core Blazor Server 应用程序中实现基于 Cookie 的登录认证的基本步骤。根据具体需求,还可以使用自定义身份验证方案来进行更复杂的登录认证。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值