专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

在Blazor服务器端创建和读取cookie

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/2/14 1:04:38       共计:3613 浏览


问题


在Blazor服务器端创建和读取cookie最简单的方法是什么。


似乎所有的解决方案都是针对BlazorWeb组装的,每当我使用这些解决方案时,Response.Cookies.Append(&quot&()和请求。Cookies[]选项不起作用。

回答


我找到了一个很好的解决方案,使用本地存储来解决Blazor服务器端Cookie问题。


首先,使用以下命令获取NuGet Blazored LocalStorage:Install Package Blazored.LocalStorage。我必须更新我的System.Text.Json,从https://www.nuget.org/packages/System.Text.Json/


将以下内容添加到中的Startup.cs:


public void ConfigureServices(IServiceCollection services)

{

   services.AddBlazoredLocalStorage();   // local storage

   services.AddBlazoredLocalStorage(config =>

       config.JsonSerializerOptions.WriteIndented = true);  // local storage

}


在Razor页面上(我使用Index.Razor进行测试):


@page "/"

@inject Blazored.LocalStorage.ILocalStorageService localStorage


<button @onclick="HandleSubmit">Create Cookie</button>  @* Create your cookie *@


@code{

   public async Task HandleSubmit()

   {

       await localStorage.SetItemAsync("cookieName", "Jason Bourne");

   }


   protected override async Task OnAfterRenderAsync(bool firstRender)

   {

       var cookieContent = await localStorage.GetItemAsync<string>("cookieName");


       if (cookieContent == null)

       {

           Console.WriteLine("Cookie is blank");

       }

       else

       {

           Console.WriteLine("We have a cookie with contents: " + cookieContent);

       }

   }

}



版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:简单粗暴的实现 Blazor Server 登录鉴权 | ·下一条:java List去除重复数据

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有