近期在做一个Hot Fix,其中有个界面在IE6下超链接无法打开,经查是链接地址太长,2161个字节,已经超出ie6,7的长度限制,现把发现此问题的过程分享给大家。

===过程=====

1、万恶的ie6,连调试都没有好的工具,ietest又不靠谱。虽然现在业界都呼吁抛弃ie6,但我们的用户还在大量使用,没办法,还得解决此问题。

2、点击超链接,没有任何反应,也没有任何js错误提示

3、检查浏览器设置,勾上了"显示每个脚本错误的通知",去掉了"禁用脚本调试"

4、再次点击,仍然没有任何错误提示,看来js代码没有错误了。也许有人会说,点击超链接怎么会有js错误,因为我们的超链接是这样写的 <a href="javascript:ckmx('xh')" >

5、问题挺奇怪,我就在其他浏览器(ie10,chrome)中把要打开的链接复制出来,粘贴在ie的地址栏里

6、不小心把地址栏中ip位置的字符给删了,那我就重新改一下,却发现根本无法输入任何字符,由此,我猜想可能url过长了

7、把url拷贝到ue中,发现url占用了2161个字节,ie,7的url限制在2048个

====原因及解决办法====

1、查看了链接地址的拼写,发现链接是这样写的

location.href = _url + _param + '&returnURL='+encodeURIComponent('[%HTML::TEXT.requestURL2%]');

_param也就一个参数,那看来肯定是[%HTML::TEXT.requestURL2%]造成的。

2、按理说[%HTML::TEXT.requestURL2%]也不会超长的,仔细看来发现我们的界面返回都是利用这个参数来返回到上个界面的,现在的这个界面已经经过了5轮钻取,A>B>C>D>E,经过前边4轮后,requestURL2已经非常长了,才造成了这个问题。

3、当前界面的链接地址改为location.href = _url + _param;不再拼接后边的参数。下一个界面的返回简单实用window.history.back();

这个问题一般情况下不会发生,发此贴给大家个警示,无意间就造成了此问题。

firefox,chrome,Opera的url长度都是4098个;

ie8之后网上没搜到,也没去官网查,不过我们这个界面ie8,ie10都能打开,估计他们也改为了4098

ie6,7的长度是2048

【经验分享】URL链接地址最长是多少?的更多相关文章

  1. Next Cloud通过修改数据库表,达到替换文件而不改变分享的链接地址的效果,以及自定义分享链接地址

    Next Cloud如何通过修改数据库表,达到替换文件而不改变分享的链接地址的效果,以及自定义分享的链接地址 本文首发于我的个人博客:https://chens.life/nextcloud-chan ...

  2. 使用SQL命令批量替换WordPress站点中图片的URL链接地址

    本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=689 前言: 本文记录了使用SQL命令批量替换URL的方法以及除了替换URL之外,网站更换图片URL地址所必须的其他 ...

  3. js获取url链接地址的参数

    访问地址为:http://XXX.com?style=green <script language="javascript"> var getArgs = functi ...

  4. JavaScript实现http地址自动检测并添加URL链接

    一.天生我材必有用 给http字符自动添加URL链接是比较常见的一项功能.举两个我最近常用到的自动检测http://地址并添加链接的例子吧,首先是QQ邮箱,在使用QQ邮箱时,如果输入了URL地址(ht ...

  5. Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL

    Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL >>>>>>>>>>>>> ...

  6. JavaScript实现url地址自动检测并添加URL链接示例代码

    写一个简单的聊天系统,发出Htpp的Url实现跳转加上a标签,下面是具体的实现,感兴趣的朋友不要错过 背景:写一个简单的聊天系统,发出Htpp的Url实现跳转加上a标签.  实现代码: 复制代码代码如 ...

  7. 我的秋招经验分享(已拿BAT头条网易滴滴)

    微信公众号[程序员江湖] 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于 2018 年秋招拿到 BAT 头条.网易.滴滴等 8 个大厂 offer,目前致力于分享这几年的学习经验. ...

  8. 【干货】Kaggle 数据挖掘比赛经验分享(mark 专业的数据建模过程)

    简介 Kaggle 于 2010 年创立,专注数据科学,机器学习竞赛的举办,是全球最大的数据科学社区和数据竞赛平台.笔者从 2013 年开始,陆续参加了多场 Kaggle上面举办的比赛,相继获得了 C ...

  9. Kaggle 数据挖掘比赛经验分享(转)

     原作者:陈成龙 简介 Kaggle 于 2010 年创立,专注数据科学,机器学习竞赛的举办,是全球最大的数据科学社区和数据竞赛平台.笔者从 2013 年开始,陆续参加了多场 Kaggle上面举办的比 ...

随机推荐

  1. 『编程题全队』Alpha 阶段冲刺博客Day2

    1.每日站立式会议 1.会议照片 2.昨天已完成的工作统计 孙志威:   确定了本阶段的团队目标   确定了个人所分配的任务(主要为客户端GUI模块) 孙慧君:    确定了自己的任务,并着手开始环境 ...

  2. Java VM 环境配置过程要点( win10,64位)

    好些教程写的都不一样.留个脚印免得以后再安装的时候找不到完全合适的教程. 注:JDk中就有java虚拟机,即JRE.除此之外,还有许多的命令包,供java程序员使用. 安装要点: (1)安装jre(j ...

  3. poj3320 Jessica's Reading Problem

    Description Jessica's a very lovely girl wooed by lots of boys. Recently she has a problem. The fina ...

  4. P4071 [SDOI2016]排列计数

    题目描述 求有多少种长度为 n 的序列 A,满足以下条件: 1 ~ n 这 n 个数在序列中各出现了一次 若第 i 个数 A[i] 的值为 i,则称 i 是稳定的.序列恰好有 m 个数是稳定的 满足条 ...

  5. c++11 继承构造

    c++11 继承构造 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> #includ ...

  6. 51nod 1483 化学变换 | 二进制 暴力

    51nod 1483 化学变换 题面 给出n个整数(n <= 1e5,每个数 <= 1e5),对每个数都可以进行多次操作,操作有两种:乘二/整除以二. 问最少经过多少次操作能使所有数相等. ...

  7. 【hdu2809】 不要62

    http://acm.hdu.edu.cn/showproblem.php?pid=2089 (题目链接) 题意 求区间${[n,m]}$中不含有62和4的数的个数. Solution 数位dp板子. ...

  8. 《Linux内核设计与实现》第17章读书笔记

    第十七章  设备与模块 一.四种内核成分 设备类型:在所有 Unix 系统中为了统一普通设备的操作所采用的分类. 模块: Linux 内核中用于按需加载和卸载目标码的机制. 内核对象:内核数据结构中支 ...

  9. Linux上给php配置redis扩展

    说明,在项目开发中难免会遇到redis中,那我应该如何配置redis这样的一个扩展呢,看下面流程: 一.安装Redis PHP在安装redis扩展时,难免要看一下官网下载安装流程,链接如下: http ...

  10. 4.tar的各个参数详解

    转于:https://blog.csdn.net/liuyundemhsg/article/details/52525028 参数:-c :建立一个压缩文件的参数指令(create 的意思):-x : ...