使用Redirector插件解决googleapis公共库加载的问题【转】

简介: 转自:http://www.cnblogs.com/kari/p/5860371.html 最近访问一些面向国外的网站总是会出现ajax.googleaips.com无法加载的情况.以下为加载stackoverflow时的情境: 图1 -无法加载的google公共库 问题的原因是谷歌没有在...
+关注继续查看

转自:http://www.cnblogs.com/kari/p/5860371.html

最近访问一些面向国外的网站总是会出现ajax.googleaips.com无法加载的情况.以下为加载stackoverflow时的情境:

图1 -无法加载的google公共库

问题的原因是谷歌没有在国内开放ajax公共库服务

使用Redirector解决公共库加载问题

Redirector这个插件的功能正如它的名字, 可以对网页中的内容进行重定向

外部样式表,外部脚本, 图片等均可以添加至作用范围

安装

Redirector目前支持Firefox、Chrome、Opera三款浏览器,可以前往对应浏览器的应用市场下载安装相应版本

熟悉Github的用户也可以直接前往项目主页上找下载链接:einaregilsson/Redirector

使用

注:如果你不希望手动设置,可以直接浏览“使用Import来导入设置”一节来使用导入来进行设置

下面以我使用的Firefox为例。

安装后工具栏中会出现Redirector的图标,点击弹出菜单

图2 -弹出菜单

菜单中包含启用/停用与编辑重定向规则两个按钮,这里我们点击第二个按钮进入设置页面来编辑重定向规则

图3 -设置页面

 点击‘Create new redirect’来新建重定向规则

图4 -编辑重定向规则

然后依次填写各项

  • Description中填写描述,这里我们填写Ajax来说明这条重定向规则应用于谷歌Aja公共库,当然你也可以随便填其他内容
  • Example URL中随便填写一个要应用重定向的URl, 这里我们使用 http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
  • Include partten中填写用来识别要应用重定向的URl的表达式,这里我们填写 *ajax.googleapis.com*
  • Redirect to中填写欲重定向至的URL,这里我们填写 $1ajax.lug.ustc.edu.cn$2

图5 -依次填写各项

依次填写各项后Example result项会显示出将Example Url根据规则修改后的结果,这里显示出http://ajax.lug.ustc.edu.cn/ajax/libs/jquery/1.7.1/jquery.min.js,嗯,非常完美不是吗

关于国内谷歌公共库镜像ajax.lug.ustc.edu.cn

我们需要有一个可以提供相同服务的镜像来替换ajax.googleapis.com

之前国内常用的是360镜像ajax.useso.com, 不过最近挂掉了, 于是我在网上找到了另一个镜像ajax.lug.ustc.edu.cn

关于ajax.lug.ustc.edu.cn请查看这篇文章

关于Include partten中的' * '占位符与Redirect to中的' $ '符号

官方文档中的一句话

$1, $2, $3 in the redirect urls will match the text that the stars matched.

也就是说Redirect to中的$1、$2分别指代了Include partten中第一个、第二个‘ * ’星号所匹配的内容

我们的设置方法通俗的说就是把原Url中ajax.googleapis.com之前与之后的内容分别抓取下来,粘贴到ajax.lug.ustc.edu.cn前后, 形成新的网址

更多关于匹配规则的内容请查看关于正则表达式的教程

接下来点击'Show advanced options',显示高级选项来设置规则的应用范围

图6 -显示高级选项

在Apply to中可以选择规则的应用范围,默认勾选的是Main window一项,重定向地址栏。这里我们只勾选Script一项,将规则应用到外部脚本中

最后点击Save来保存,就会得到与图3一样的页面

再次加载文章开头提到的Stackoverflow网站

图7 -成功加载Stackoverflow网站

大功告成!

使用Import来导入设置

将以下代码随便复制到一个新文件中

复制代码
{
    "createdBy": "Redirector v3.1.0",
    "createdAt": "2016-09-10T13:29:02.323Z",
    "redirects": [
        {
            "description": "Ajax",
            "exampleUrl": "http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js",
            "exampleResult": "http://ajax.lug.ustc.edu.cn/ajax/libs/jquery/1.7.1/jquery.min.js",
            "error": null,
            "includePattern": "*ajax.googleapis.com*",
            "excludePattern": "",
            "redirectUrl": "$1ajax.lug.ustc.edu.cn$2",
            "patternType": "W",
            "processMatches": "noProcessing",
            "disabled": false,
            "appliesTo": [
                "script"
            ]
        }
    ]
}
复制代码

之后使用设置页面的Import功能导入该文件就可以加载与上文相同的重定向规则


 

如果你喜欢本文,请点击下方推荐按钮

【作者】张昺华
【新浪微博】 张昺华--sky
【twitter】 @sky2030_
【facebook】 张昺华 zhangbinghua
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
目录
相关文章
|
2天前
|
JSON JavaScript 前端开发
全面的.NET微信网页开发之JS-SDK使用步骤、配置信息和接口请求签名生成详解
全面的.NET微信网页开发之JS-SDK使用步骤、配置信息和接口请求签名生成详解
|
6天前
|
前端开发 小程序 PHP
laravel5.8(四)引入自定义常量文件及公共函数文件
开发过程中,我们一般会用到一些不会改变,或者改变不是很频繁的值,这样的值我们一般将他们定义成常量。 比如网站根目录,或者分页数,或者域名等等。 那我们如何在laravel5.8中引入自定义的常量文件及公共的函数文件呢。 大概有两种方式: 1:框架目录下引入(不推荐) 在框架目录vendor下新建常量文件const.php,以及公共函数文件function.php 在autoload.php文件中引入。 这种方法是可以的,但是不推荐,框架目录下最好都是框架自己的那些文件,正常来说,框架的文件我们在开发过程中,git是不会进行托管的。 2:在app目录下引入 在bootstrap目录下新建常量文件
12 0
|
10月前
|
JavaScript 前端开发 应用服务中间件
项目性能优化之用compression-webpack-plugin插件开启gzip压缩,以vue为例
项目性能优化之用compression-webpack-plugin插件开启gzip压缩,以vue为例
460 0
|
10月前
|
XML 数据格式
Revit两种外部接口的插件注册文件addin
Revit两种外部接口的插件注册文件addin
|
12月前
|
前端开发 JavaScript PHP
Yii2 使用AssetBundle中的$sourcePath对资源文件进引入和调用
Yii2 使用AssetBundle中的$sourcePath对资源文件进引入和调用
172 0
|
JavaScript
如何实现一个公共组件库上传到npm并在项目中使用
如何实现一个公共组件库上传到npm并在项目中使用
289 0
如何实现一个公共组件库上传到npm并在项目中使用
|
边缘计算 JSON Serverless
next.js 源码解析 - API 路由篇
首先我们得确认下源码的位置, next.js 的 packages 中包括了很多包,我们先要确认和 API 路由相关的源码位置。
|
Web App开发 JavaScript 前端开发
html 玫瑰图 ,拿来直接用,无需下载js包【以把js包改为远程访问】
html 玫瑰图 ,拿来直接用,无需下载js包【以把js包改为远程访问】
103 0
html 玫瑰图 ,拿来直接用,无需下载js包【以把js包改为远程访问】
|
JavaScript 前端开发
html 雷达图 ,拿来直接用,无需下载js包【以把js包改为远程访问】
html 雷达图 ,拿来直接用,无需下载js包【以把js包改为远程访问】
111 0
html 雷达图 ,拿来直接用,无需下载js包【以把js包改为远程访问】
|
JavaScript
vue+webpack实现vue打包后生成配置文件用以外部修改公共路径
vue+webpack实现vue打包后生成配置文件用以外部修改公共路径
517 0
vue+webpack实现vue打包后生成配置文件用以外部修改公共路径