El *_*mes 3 cookies asp.net-core
我在我的ASP.NET Core MVC(.NET Framework)应用程序之一中使用cookie。我正在尝试在客户端浏览器会话处于活动状态时保留对象值。我想读取,写入和更新该值。
我为了序列化和反序列化对象,使用了System.Web.Script.Serialization命名空间中的JavascriptSerializer类,为了处理cookie,我使用了Microsoft.ASPNetCore.Http命名空间中的HttpResponse和HttpRequest类。
我可以读取cookie,然后将其反序列化为我的对象,或者序列化我的对象,然后将其写入cookie。但是由于Response.Cookies对象不允许我更新现有的cookie,所以我无法更新cookie。然后,我删除了cookie并将其附加到Response.Cookies对象,但是可以。是否有其他方法可以在MVC6应用程序中更新Cookie,而不必删除它?那不是“ cookie更新”!
Cookies无法更新。也不能为此删除它们。这不是MVC的问题,它是关于cookie的事实,请参见例如https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies:服务器对cookie的唯一操作是设置它。将cookie视为浏览器而非服务器拥有,可能会有所帮助。
在浏览器中,您可以看到为cookie重新添加新值可以达到您想要的效果:浏览器将获得新值。例如
服务器端:
HttpContext.Response.Cookies.Append("key", "value set at " + DateTime.Now.TimeOfDay);
Run Code Online (Sandbox Code Playgroud)
和客户端:
document.writeln(document.cookie);
console.log("document.cookie", document.cookie);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1742 次 |
最近记录: |