【发布时间】:2021-02-16 17:18:03
【问题描述】:
希望在 Startup.cs 中的应用程序初始化期间获取 cookie 值,但经过大量搜索后,我找不到任何解决方案。 我可以从 Razor 页面获取 cookie,并了解一些存储 NuGet 包。
澄清一点:
我想要一个类似的 cookie,语言和文化模块有什么:RequestCultureProvider 可以在配置期间读取该 cookie,但它具有特殊的方法、功能等。
微软官方说明:
https://docs.microsoft.com/en-us/aspnet/core/blazor/globalization-localization?view=aspnetcore-5.0
在前面的示例中,如果用户想要更改语言,请调用控制器以使用相关语言信息重新加载新页面并将值保存在 cookie 中。
如果在启动期间我无法从 cookie 中获取上次使用的语言值,则当我更改为新语言时,初始页面需要重新加载一次... .
所以我想要类似的东西,例如:每个页面上都有一个货币选择器,并希望将其值存储在 cookie 中,因此下次用户访问该页面时,它会显示正确的货币 - 无需页面重新加载。
欢迎任何解决方案。
【问题讨论】:
-
您对文化选择器的引用具有误导性。
-
我已经发布了一个新答案。
-
“当我更改为新语言时,初始页面需要重新加载一次......”为什么在渲染页面之前无法读取 cookie?
-
很抱歉,如果文化选择器示例具有误导性。 “为什么在渲染页面之前不能读取 cookie?”我可以,但我想要一个类似于文化 cookie 的解决方案,所以我不需要在每次页面加载时读取 cookie/localStorage。我只需要应用启动过程中的信息即可。
标签: c# cookies blazor blazor-server-side