在aASP.Net中发送Base64编码查询字符串的问题

时间:2011-01-05 16:17:10

标签: asp.net

我正在.Net 3.5中创建一个网站,我正在将字符串转换为Base64String以通过querystring发送它。 Response.Redirect适用于较小的字符串。但如果原始字符串大小为1670,则response.redirect会导致错误“无法找到页面”。

item是以下代码段中的字符串。

byte [] data = Encoding.Default.GetBytes(item); return Convert.ToBase64String(data)

任何人都可以帮忙解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

查询字符串不应该用于长值 - 虽然它取决于浏览器和Web服务器究竟是什么最大安全长度,但它肯定不会安全超过大约2000个字符,我会对依赖于它高于255.解决方案是使用POST请求,或者可能将数据保存在服务器上,并在查询字符串中将密钥传递给它。

答案 1 :(得分:0)

作为查询字符串发送的字符存在限制 - 因浏览器而异:

http://support.microsoft.com/kb/q208427/

我将它保存到数据库,然后用密钥在另一端检索它。