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 相关文章推荐
一些技巧性实用js代码小结
Oct 14 Javascript
游览器中javascript的执行过程(图文)
May 20 Javascript
jQuery Animation实现CSS3动画示例介绍
Aug 14 Javascript
jQuery中bind与live的用法及区别小结
Jan 27 Javascript
javascript实现瀑布流自适应遇到的问题及解决方案
Jan 28 Javascript
浅析JavaScript中的对象类型Object
May 26 Javascript
微信小程序 UI布局常用技巧整理总结
Dec 05 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
Jan 26 Javascript
bootstrap table支持高度百分比的实例代码
Feb 28 Javascript
vue element-ui之怎么封装一个自己的组件的详解
May 20 Javascript
jQuery+ajax实现批量删除功能完整示例
Jun 06 jQuery
vue实现折线图 可按时间查询
Aug 21 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
php Ajax乱码
2008/04/09 PHP
PHP 年月日的三级联动实例代码
2017/05/24 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
jQuery 打造动态渐变按钮 详细图文教程
2010/04/25 Javascript
javascript中字符串替换函数replace()方法与c# 、vb 替换有一点不同
2010/06/25 Javascript
script标签的 charset 属性使用说明
2010/12/04 Javascript
自动设置iframe大小的jQuery代码
2013/09/11 Javascript
jQuery jcrop插件截图使用方法
2013/11/20 Javascript
JS辨别访问浏览器判断是android还是ios系统
2014/08/19 Javascript
JavaScript检查某个function是否是原生代码的方法
2014/08/20 Javascript
AngularJS使用ngMessages进行表单验证
2015/12/27 Javascript
jQuery实现导航滚动到指定内容效果完整实例【附demo源码下载】
2016/09/20 Javascript
关于Bootstrap按钮组件消除黄框的方法
2017/05/19 Javascript
深入浅析Nodejs的Http模块
2017/06/20 NodeJs
关于javascript sort()排序你可能忽略的一点理解
2017/07/18 Javascript
vue实现登陆登出的实现示例
2017/09/15 Javascript
详解Vue中一种简易路由传参办法
2017/09/15 Javascript
代码详解javascript模块加载器
2018/03/04 Javascript
[02:05]DOTA2完美大师赛趣味视频之看我表演
2017/11/18 DOTA
Python编程实现线性回归和批量梯度下降法代码实例
2018/01/04 Python
python 不同方式读取文件速度不同的实例
2018/11/09 Python
python判断一个数是否能被另一个整数整除的实例
2018/12/12 Python
Python实现的字典排序操作示例【按键名key与键值value排序】
2018/12/21 Python
CSS Grid布局教程之浏览器开启CSS Grid Layout汇总
2014/12/30 HTML / CSS
amazeui模态框弹出后立马消失并刷新页面
2020/08/19 HTML / CSS
阿根廷网上配眼镜:SmartBuyGlasses阿根廷
2016/08/19 全球购物
幼儿教育感言
2014/02/05 职场文书
军训教官感言
2014/03/02 职场文书
2015年幼儿园元旦亲子活动方案
2014/12/09 职场文书
小学生作文评语集锦
2014/12/25 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
vue3引入highlight.js进行代码高亮的方法实例
2022/04/08 Vue.js
Docker官方工具docker-registry案例演示
2022/04/13 Servers
移除Selenium中window.navigator.webdriver值
2022/06/10 Python
java实现web实时消息推送的七种方案
2022/07/23 Java/Android