IE 7中的URL参数双重编码问题& 8

时间:2010-11-12 08:56:53

标签: html internet-explorer url encoding

IE(7& 8)浏览器处理安全证书错误时遇到问题。 我们的应用程序需要发送到用户电子邮件的安全链接,该链接由随机生成的令牌组成,该令牌可能包含特殊字符。所以在发送之前,我们对令牌进行编码。示例网址如下:

本地主机:8080 / MyApp的T = 1408米%26DX%243q9a

当用户在IE中打开它时,它会给出证书错误页面。 (“此网站的安全证书存在问题。”)该页面上的继续链接会将我们的令牌重新编码为其他内容:

本地主机:8080 / MyApp的T = 1408米%2526DX%25243q9a

(因此,用户将被发送到与我们期望的网址略有不同的网址,如您所见。)

在这里,您可以看到我发送的“%”变为“%25”。如何在此之后正确解码令牌?

1 个答案:

答案 0 :(得分:1)

讨厌!

如果这是一个可重现的错误,而不是由某些字符集问题引起的有趣行为 - 它看起来不像它! - 那么我认为解决它的唯一方法是对仅使用字母和数字的参数使用编码方法,例如base64。