如何从Google CDN加载jquery?

时间:2012-11-18 18:10:23

标签: jquery google-chrome-extension

我不想在本地托管另外一个jquery lib再创建一个插件。我正试图从谷歌的CDN加载它,但我得到了这个例外:

  

拒绝加载脚本“http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js”,因为它违反了以下内容安全策略指令:“script-src” self'chrome-extension-resource:“。

我该如何解决?

2 个答案:

答案 0 :(得分:5)

如果要从Google的CDN加载jQuery,则必须将以下内容安全规则添加到清单文件中。


    ...
    "content_security_policy": "script-src 'self' https://*.googleapis.com; object-src 'self'",
    ...

欲了解更多信息,请阅读Sirwan Afifi已经提供的官方文档,特别是关注CSP specificationarticle on HTML5 rocks的链接。

答案 1 :(得分:0)

http://developer.chrome.com/extensions/contentSecurityPolicy.html

  

<强>&GT;仅加载本地脚本和对象资源

     
    
      

脚本和对象资源只能从扩展名中加载       包裹,而不是来自网络。这可以确保您的扩展       只执行你特别批准的代码,防止       主动网络攻击者恶意重定向您的请求       资源。

    
  

所以,你应该下载jquery文件并将其包含在你的包中:

<!doctype html>
<html>
  <head>
    <title>My Awesome Popup!</title>
    <script src="jquery.min.js"></script>
  </head>
  <body>
    <button>Click for awesomeness!</button>
  </body>
</html>