1

我有一个程序在页面上的 cookie 中写入重定向,

SetCookie(key,value);
Response.Redirect("SecondPage.aspx");

并尝试读取第二页上的 cookie。

var value = GetCookie(key);

就如此容易!它适用于 IE/FF/Chrome,但不适用于 Apple 的 Safari!

这是 cookie 值在 IE/FF/Chrome 中的样子:

flyerName=1111+test+road%2c+LS%2c+MO&flyerPersonId=1241BST34&flyerTemplate=Vertical.pdf&flyerListing=6666&flyerOrg=TESTORG

在 Safari 中:

flyerName=1111+test+road

显然 Safari 已经截断了 %2C 之后的字符串,即 ascii 表中的逗号(,)!

PS我看过这篇文章,但它对我没有帮助。

4

2 回答 2

2

问题解决了!在保存 cookie 之前,执行 aServer.UrlEncode(strValue)并在检索时使用 aServer.UrlDecode(c.Values.Item(strKey))

显然 Safari 无法正确处理 cookie 值中的","和。";"

于 2013-04-30T18:31:09.197 回答
0

尝试这个

Responce.cookie["PageUrl"].value=your value;
Responce.cookie["PageUrl"].Path="/";

现在您可以通过您的应用程序访问此 cookie;

于 2013-04-30T04:37:18.573 回答