Cookie需要什么样的编码?

时间:2010-11-17 22:10:10

标签: c# asp.net cookies encoding

对于cookie应该执行哪种encoding(将字节数组转换为文本)?

Base64 ?
UrlEncode ?
...

3 个答案:

答案 0 :(得分:0)

您不需要任何编码。为防止用户篡改,最简单的解决方案是使用sessions(通常在幕后使用ASP.NET_SessionId),而不是制作自定义Cookie。

编辑:如果你真的需要存储一个任意的字节数组,base 64就可以了。但你应该解释为什么要这样做。

答案 1 :(得分:0)

我个人将MD5编码ID并存储数据库中的所有内容,或者如果我可以更改数据库使用GUID而不是递增ID

答案 2 :(得分:0)

Base64编码的字符串对URL或cookie无效。 base64编码有许多变体可以避免禁用字符。在.NET中,您可以使用HttpServerUtility.UrlTokenEncode()和.UrlTokenDecode()。

请参阅https://stackoverflow.com/a/1789179/24315