Request.Cookies 和 Document.cookie 信息不匹配

在您使用客户端的代码 (document.cookie) 编写 cookie 时,写入值不匹配的活动服务器页面页面中 Request.Cookies 返回的值。最常见的行为是删除空格。

例如 document.cookie 使用代码编写

<SCRIPT Language=vbscript>
document.cookie = "MyCookie = Here is some text."
</SCRIPT>

Request.Cookies("MyCookie") 从返回的值是"Hereissometext。

 

 

 

为 HTTP 不自动编码 document.cookie 写入的值。 例如对于冒号 (:) 编码的 HTTP 将作为"%3a"返回。 Request.Cookies 期望为已编码的字符串。 如此一来未编码的字符串被解释为编码,从而导致 document.cookie 和 $ Request.Cookies 中的不同值。

 

 

 

当您的代码将 cookie 写入 document.cookie 时,该代码应使用 cookie 值编码的 JavaScript escape() 函数。 下面的示例将写入称为"MyCookie"cookie 和对值进行编码。

<SCRIPT Language=javascript></SCRIPT>

<SCRIPT Language=vbscript>
document.cookie = "MyCookie = " & escape("Here is some text.")
</SCRIPT>

注意: 为了要使用 JavaScript escape() 函数从 Microsoft Visual Basic 脚本 (VBScript) 必须引用 JavaScript 脚本引擎,HTML 页中的至少一次 (如示例所示)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值