【发布时间】:2019-05-30 04:21:32
【问题描述】:
我有一个登录页面,该页面向服务器发送了一堆数据,然后我想获取其中一些数据并使用客户端上的 Blazor 将其保存到 cookie 中。
所以首先我已经成功注入了 IHttpContextAccessor。现在在我的 Blazor 函数中,我有:
httpContextAccessor.HttpContext.Response.Cookies.Append("test", "ddd");
在调试中,当我点击上面的代码行时,它会出错:
“标头是只读的,响应已经开始。”
当然,我不会在 cookie 中保存带有“ddd”的“test”,我现在只是想获取一个 cookie 来保存。
【问题讨论】:
-
另一种方法是通过this Blazor library 使用
LocalStorage。 IMO,它是 Blazor 应用程序的更合适的客户端存储工具,因为每次请求都会发送 cookie,而本地存储是 Blazor 应用程序可用的数据,可以根据需要使用。 -
我们尽可能使用本地存储,但是对于这一点,我们与之交互的另一个软件会查找存储在 Cookie 中的信息。这个应用程序需要代表次要软件创建它,直到我们能够改变它。