加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 添加到Response.Cookies的Cookie也被添加到Request.C

发布时间:2020-12-16 09:46:20 所属栏目:asp.Net 来源:网络整理
导读:如果我通过Response.Cookies.Add()向响应中添加cookie,则cookie也会出现在Request.Cookies中. 有没有办法获得原始请求cookie(忽略新添加的响应cookie),而无需提前缓存Request.Cookies? 有一个another question,询问为什么会出现这种情况(这一点我很清楚).我
如果我通过Response.Cookies.Add()向响应中添加cookie,则cookie也会出现在Request.Cookies中.

有没有办法获得原始请求cookie(忽略新添加的响应cookie),而无需提前缓存Request.Cookies?

有一个another question,询问为什么会出现这种情况(这一点我很清楚).我问是否有任何解决办法.

更新

作为一个非常粗略的过滤器,您似乎可以在Request.Cookies中查找其Expires等于默认值(DateTime)的cookie.这是因为当浏览器在请求中序列化其cookie时,它们不包括其过期日期.

但是,这不会消除任何意外添加到Response而没有Expires的cookie.

解决方法

Request.Headers [“Cookie”]包含浏览器发送的原始标头值.它是以分号分隔的键值对列表.例如.,:

key1=value1; key2=value2

哪个可以解析为Dictionary< string,string>找出请求的原始cookie(忽略通过操作Request.Cookies或Response.Cookies添加或修改的任何cookie).

(这些值是URI编码的,以避免任何Bobby Tables情况下包含等号或分号的值.)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读