URL长度的测试
Windows 测试结果
IE | FireFox | Chrome |
---|---|---|
|
2083 字符 | 2046字符 |
Macintosh 测试结果
Safari , FireFox , Chrome 的行为表现一致,测试的时候试过最长是80000个字符。没有出现截断或者运行不了的情况。可以推测,至少以目前的测试结果来看,Macintosh上对Scheme URL是没有长度的最大值限制的。
细节:
- IE的2083个字符是在本地打开HTML文件测得的,但是在实际部署的网站上进行测试发现IE的这个字符上限远远小于2083。最后在我不断的测试后,得到的数子就是这个奇怪的507个字符。当然最后我从微软官方的博客中也得到了同样的结果。传送门
- FireFox本身应该是没有做长度限制的(仅仅是猜测),这个长度有可能是由Windows系统做出的限制。而且,在传递过程,如果超过最大长度,系统会截断传输的字符串。
- Chrome应该是浏览器自己对长度做出了限定,还有一点不同就是,如果长度超出了Chrome的限制,则Chrome不做任何动作,相当于Scheme URL调用失败了。
- 还有一条是Chrome特有的,就是在一个点击动作中无法做多次URL Scheme的启动,后面的那些次会被Chrome忽略掉。除非接下来的动作也是由用户的动作触发的。在stackoverflow上也有一个相关的问题,不过并没有解决的方法。传送门
End