Ext JS 的 CDN 服务

简介: 项目上线后,一般 JS 文件都是采用混淆的版本,而不会使用开发版本或者调试版本。如果需要为 ExtJS 库考虑一个 CDN 服务供应,本人第一时间可能会想到的便是链接 Ext 官方的 js 文件。

项目上线后,一般 JS 文件都是采用混淆的版本,而不会使用开发版本或者调试版本。如果需要为 ExtJS 库考虑一个 CDN 服务供应,本人第一时间可能会想到的便是链接 Ext 官方的 js 文件。此方法虽可行,但是链接到国外服务器一来较慢,二则如果人家也不作跨域调用,最终还是不能够实现 CDN 性质的服务的。

于是,内容供应网络(Content Distributed Network,简称CDN)的想法就被提出来了。CDN 是一种便民的概念,一般指把可以共享的资源集中存放在某一主机上面,从而免除每次在自己的主机上访问公用的资源,对自身而言也节约了带宽,减轻了应用服务器的负担(如果 CSS /图片都算在内就相当可观)。CacheFly 就是一个为 Ext 用户提供此类服务的供应商。CacheFly 支持从官方的“Build your own! ”工具所生成的包,直接 *.js 文件的引入方式当然也支持。如果是 Build your own 的话,在“生成向导”的提示中选择“CacheFly”就可以了;如果是“直接引入”,在页面插入以下 http 地址的 script (注意当前最新的版本号)。

  • http://extjs.cachefly.net/ext-3.0.3/adapter/ext/ext-base.js
  • http://extjs.cachefly.net/ext-3.0.3/ext-all.js
  • http://extjs.cachefly.net/ext-3.0.3/resources/css/ext-all.css

既然谈到 CDN 顺便谈谈 Google。像 Dojo、jQuery……Google 都为公众提供主流框架的 CDN 服务,但唯独 ExtJS 的为什么看不见呢?须知 ExtJS 的用户不在少数,但 Google CDN 就没有加入——这反映了什么问题呢,这正是最为人诟病的版权问题!ExtJS 为双许向的开源框架,其中就包括了商业许向,这一点正正是 Goolge 所不能容忍的!Goolge 要求其的推架,绝对清一色免费的。因此只有 MIT 许可的 Ext Core 才纳入 Google CDN 共享。要使用该服务,比较简单,用 <script> 直接引用的地址如下:

  • http://ajax.googleapis.com/ajax/libs/ext-core/3.0/ext-core.js
  • http://ajax.googleapis.com/ajax/libs/ext-core/3.0/ext-core-debug.js

另外一种可行的方法是,引入 Google AJAX API Loader 脚本,然后执行 “google.load('ext-core', '3');” 便可。如果项目只需要 Ext Core,Google 是可以为 Ext Core 用户提供 CDN 服务的。尽管没有提供完整的 Ext-all.js 支持,但回顾当初,这也是 extjs.com 与 Google 积极磋商后的妥协结果。在 Google 官方帖子上,显示了不少粉丝都曾经声援 Ext——要求 Google CDN 加入 Ext-all。

这里有一个技巧,如果想开发期间与部署后的 url 一致,我们可以修改 etc/hosts 文件,加入这句:

127.0.0.1 extjs.cachefly.net

edit:2009-12-14

edit:2011-5-6:

  • http://extjs.cachefly.net/ext-3.3.1/adapter/ext/ext-base.js
  • http://extjs.cachefly.net/ext-3.3.1/ext-all.js
  • http://extjs.cachefly.net/ext-3.3.1/resources/css/ext-all.css

另外,估计是上传整个 ExtJS 包的缘故,包括“例子 examples”等的 CDN 也是有的:http://extjs.cachefly.net/ext-3.1.0/examples/index.html

http://extjs.cachefly.net/ext-4.0.0/ext-all.js

目录
相关文章
|
4月前
|
前端开发 JavaScript CDN
推荐一款稳定快速免费的前端开源项目 CDN 加速服务
推荐一款稳定快速免费的前端开源项目 CDN 加速服务
130 0
|
7月前
|
前端开发 JavaScript CDN
Nuxt.js 本地(CDN 远程)JS/CSS 全局(单页面)导入
Nuxt.js 本地(CDN 远程)JS/CSS 全局(单页面)导入
287 0
|
21天前
|
JavaScript 前端开发 Java
MooTools、Backbone、Sammy、Cappuccino、Knockout、JavaScript MVC、Google Web Toolkit、Google Closure、Ember、Batman 以及 Ext JS。
MooTools、Backbone、Sammy、Cappuccino、Knockout、JavaScript MVC、Google Web Toolkit、Google Closure、Ember、Batman 和 Ext JS 都是 JavaScript 框架,用于开发 Web 应用程序。它们分别提供了不同的功能和特性,以帮助开发者更高效地构建和维护 Web 应用程序。
11 2
|
3月前
|
缓存 API 对象存储
一看就懂:我是如何使用OSS提供的CDN服务的?
一看就懂:我是如何使用OSS提供的CDN服务的?
76 1
|
8月前
|
设计模式 JavaScript 前端开发
|
5月前
|
JavaScript 前端开发 API
如何使用 JavaScript 代码连接部署在 SAP ABAP 服务器上的 OData 服务试读版
如何使用 JavaScript 代码连接部署在 SAP ABAP 服务器上的 OData 服务试读版
32 0
|
8月前
|
编解码 JavaScript 前端开发
百度地图:使用javascript和web服务API自动实现经纬度编码的解决方案
百度地图:使用javascript和web服务API自动实现经纬度编码的解决方案
80 1
|
11月前
|
JavaScript CDN
js:Vue2.js中使用CDN方式引入vueuse
js:Vue2.js中使用CDN方式引入vueuse
538 0
|
11月前
|
JavaScript CDN
js:Vue2.js通过CDN方式引入模板
js:Vue2.js通过CDN方式引入模板
98 0
|
11月前
|
CDN
Vue3.js快速开发CDN引入测试模板
Vue3.js快速开发CDN引入测试模板
306 0

相关产品

  • 云迁移中心