2

您好,我在设置一个 cookie 时遇到了小问题。我正在使用 HttpWebRequest 类来发送我的请求。我需要这个设置cookie的代码:

    CookieContainer myContainer = new CookieContainer();
    myContainer.Add(new Uri("address"), new Cookie("cookie", "val1,val2"));

但这会引发错误

cookie 的 'Value'='val1,val2' 部分无效。

我也尝试过 UrlEncoding cookie,例如:

    new Cookie("cookie", HttpUtility.UrlEncode("val1,val2"))

但是cookie变成Cookie: cookie=val1%2cval2了被网页拒绝的那个。

我还尝试在值部分周围使用引号:

    new Cookie("cookie", "\"val1,val2\""))

但是这个也被网站拒绝了。

也许有人知道我如何手动将 cookie 值覆盖为我需要的值而不会触发错误?

帮助将不胜感激。

4

2 回答 2

2

尝试:

new Cookie("cookie", HttpUtility.UrlEncode("val1%2Cval2"))

%2C 就像一个逗号:)

于 2012-04-28T19:59:12.597 回答
0

这样做来设置cookie

new Cookie("cookie", Server.UrlEncode("val1,val2"))

并用于Server.UrlDecode获取原始 cookie 值。

于 2012-04-28T20:02:07.230 回答