url中不允许使用大括号{}

问题描述:在页面打开一个对话框,对话框里面写了一个iframe,iframe里面的src地址中带了一个json格式的字符串。在本地测试iframe里面的页面可以正常显示,但是在环境上就是不显示。

问题查找过程:把在iframe里面打不开的地址直接复制到浏览器地址栏还是打不开,在本地是可以打开的,然后检查了一下url后面的参数感觉有点奇怪,平时没见过url后面的参数是带{}的,然后就把url后面带{}的参数删除掉,结果页面打开了,可是本地为什么可以正常打开呢?还是不知道问题的根本原因。后来想到我解析url后面json格式参数的时候使用了decodeURI去解密才能正常获取到,那是不是可以给url后面的json也使用encodeURI加密一下,在本地改了代码拿到加密后的json格式参数,把这一串参数加到服务器后面的地址果然可以正常打开了

问题总结,url中不允许使用{},如果必须使用时可以使用encodeURI加密,至于本地为什么正常目前还不清楚,如果有知道的朋友可以留下评论,谢谢!

贴一篇文章希望有用,https://zhuanlan.zhihu.com/p/32766384

你可能感兴趣的:(url中不允许使用大括号{})