我们有一个系统可以发送带有链接的常规电子邮件,其中许多包含URL编码参数,例如:
href="http://www.mydomain.com/login.aspx?returnurl=http%3A%2F%2Fwww.mydomain.com%2Fview.aspx%3Fid%3D1234%26alert%3Dtrue"
您可以看到“returnurl”参数已编码。但是,似乎我们的大量用户(看似hotmail)正在通过此参数部分解码接收电子邮件,例如:
href="http://www.mydomain.com/login.aspx?returnurl=http://www.mydomain.com/view.aspx?view.aspx%3Fid%3D1234%26alert%3Dtrue"
为什么会像这样解码?为什么只能部分解码?因此我不知道如何处理它。我想到base-64编码但是base64字符串包含需要解码的字符......我想到了双重编码但是我不知道是否要对参数进行双重解码......任何人都可以帮忙吗?感谢。
答案 0 :(得分:0)
可能发生这种情况的一个原因是因为url规则编码are different before and after ?
所以如果正在进行解码的机制从url和apples查询解码规则的“后面”执行,直到它首先找到?
那么这可能会导致您描述的问题......
不知道如何处理它虽然我理解这种不合适的解码系统是你无法控制的。我会尝试以某种方式隐藏?
返回url查询...