js电信网通双线自动选择技巧


Posted in Javascript onNovember 18, 2008

我们且不谈论所做产品的初期发展用户人群因为这没有多大意义,如果你定位为学生,那么根据我们自身大学四年的经验,同学中间用电信、校园网的比例基本上变数太大。
值得庆幸的是,现在我们已经实现电信、网通双线北网通、南电信是我们国家的一个特色。更甚至07年春节爆出电信与网通内部协议,内容大概是南北互不侵犯各自的领域。因此,如果要立足做一个成功的互联网产品,必须不要管用户来自于哪里,用的什么网络环境。这最后的解决方案就是电信、网通双线。还有个间隙--校园网,比较好的是校园网跟网通有很宽的光纤直连,物理环境可以用米来解决。

技术处理

<img src="https://3water.com/direct" width="1" height="1" onerror="Javascript:top.location='https://3water.com'"> 
<img src="http://cnc.3water.com/direct" width="1" height="1" onerror="Javascript:top.location='http://cnc.3water.com'">

这是电信、网通自动选择的核心代码,天哪,太神奇了,竟然是js实现的。

解释: src里边放的是一个不存在的地址,这样2个img打开的时候都会出错,都会触发onerror事件,但是你的浏览器对这2个img加载、判断出错有个先后顺序,而这个先后顺序取决于你的浏览器去连2个url的快慢程度,这就表现为http请求两个域名的快慢。假如你是校园网或者网通,同时去连3water.com(这个域名是绑定到电信的一个ip)、cnc.3water.com(这个域名是绑定到网通的一个ip)

当然就会先触发onerror="Javascript:top.location='http://cnc.3water.com'"

这样就打开了http://cnc.3water.com

电信同理,最后就实现了校园网、网通用户打开的是https://3water.com/drect,电信用户打开的是https://3water.com/direct

Javascript 相关文章推荐
JavaScript 指导方针
Apr 05 Javascript
jquery.hotkeys监听键盘按下事件keydown插件
May 11 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
Jan 14 Javascript
Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果
May 27 Javascript
Vue.js 使用v-cloak后仍显示变量的解决方法
Nov 19 Javascript
js使用cookie实现记住用户名功能示例
Jun 13 Javascript
微信小程序实现购物车代码实例详解
Aug 29 Javascript
javascript实现超好看的3D烟花特效
Jan 01 Javascript
js实现点击生成随机div
Jan 16 Javascript
jquery绑定事件 bind和on的用法与区别分析
May 22 jQuery
javascript利用canvas实现鼠标拖拽功能
Jul 23 Javascript
利用JS判断元素是否为数组的方法示例
Jan 08 Javascript
JavaScript脚本性能优化注意事项
Nov 18 #Javascript
javascript 字符串连接的性能问题(多浏览器)
Nov 18 #Javascript
js的闭包的一个示例说明
Nov 18 #Javascript
Ext面向对象开发实践(续)
Nov 18 #Javascript
Javascript打印网页部分内容的脚本
Nov 17 #Javascript
js实现简单模态窗口,背景灰显
Nov 14 #Javascript
javascript 限制输入和粘贴(IE,firefox测试通过)
Nov 14 #Javascript
You might like
使用Apache的rewrite技术
2006/06/22 PHP
php下将XML转换为数组
2010/01/01 PHP
php中mkdir函数用法实例分析
2014/11/15 PHP
PHP文件缓存类实现代码
2015/10/26 PHP
PHP中CheckBox多选框上传失败的代码写法
2017/02/13 PHP
PHP微信发送推送消息乱码的解决方法
2019/02/28 PHP
JQuery 遮罩层实现(mask)实现代码
2010/01/09 Javascript
Js 获取Gridview选中行的内容操作步骤
2013/02/05 Javascript
js控制iframe的高度/宽度让其自适应内容
2014/04/09 Javascript
js和jquery如何获取图片真实的宽度和高度
2014/09/28 Javascript
jquery中JSON的解析方式
2015/03/16 Javascript
自己编写的支持Ajax验证的JS表单验证插件
2015/05/15 Javascript
jQuery 遍历函数详解
2015/07/05 Javascript
简单介绍jsonp 使用小结
2016/01/27 Javascript
JavaScript实现复制内容到粘贴板代码
2016/03/31 Javascript
AngularJS入门教程之AngularJS模型
2016/04/18 Javascript
jQuery autoComplete插件两种使用方式及动态改变参数值的方法详解
2016/10/24 Javascript
JavaScript实现三级联动菜单实例代码
2017/06/26 Javascript
vue嵌套路由与404重定向实现方法分析
2018/05/04 Javascript
javascript中数组的常用算法深入分析
2019/03/12 Javascript
vue实现axios图片上传功能
2019/08/20 Javascript
聊聊鉴权那些事(推荐)
2019/08/22 Javascript
从零搭一个自用的前端脚手架的方法步骤
2019/09/23 Javascript
python 寻找list中最大元素对应的索引方法
2018/06/28 Python
Python多项式回归的实现方法
2019/03/11 Python
PyQt5固定窗口大小的方法
2019/06/18 Python
对python中各个response的使用说明
2020/03/28 Python
python中如何使用虚拟环境
2020/10/14 Python
Python3+Appium安装及Appium模拟微信登录方法详解
2021/02/16 Python
canvas学习笔记之2d画布基础的实现
2019/02/21 HTML / CSS
BOSE德国官网:尽探索之力,享音乐之极
2016/12/11 全球购物
专业毕业生个性的自我评价
2013/10/03 职场文书
乔丹名人堂演讲稿
2014/05/24 职场文书
给老婆的检讨书(搞笑版)
2015/05/06 职场文书
Go语言基础知识点介绍
2021/07/04 Golang
Go语言编译原理之变量捕获
2022/08/05 Golang