0

感谢您抽时间阅读。这是我的扩展文件夹的目录。

这是清单代码:

{
  "manifest_version": 2,
  "name": "Technobuffalo Stories",
  "description": "Your Description about Extension goes here",
  "version": "1.0",
  "content_scripts": [ {
      "js": [ "popup.js" ],
      "matches": [ "http://feeds.feedburner.com/*" ]
   } ],
  "permissions": [ "http://feeds.feedburner.com/*" ],
  "browser_action": {
    "default_icon": "icon_16.jpeg",
    "default_popup": "popup.html"
  }
}

这是 popup.html :

<html>
<head>
    <title>Technobuffalo Stories
    </title>
    <script type="text/javascript" src="https://www.google.com/jsapi"></script>
    <script src="popup.js"></script>  
</head>
<body>
    <div id="feed" style="background-color:orange;height:500px;width:500px;" ></div>
</body>
</html>

最后是 popup.js :

google.load("feeds", "1");

function initialize() {
  var feed = new google.feeds.Feed("http://feeds.feedburner.com/technobuffalo/rss?format=xml");
  feed.load(function(result) {
    if (!result.error) {
      var container = document.getElementById("feed");
      for (var i = 0; i < result.feed.entries.length; i++) {
        var entry = result.feed.entries[i];
        var div = document.createElement("div");
        div.appendChild(document.createTextNode(entry.title));
        container.appendChild(div);
      }
    }
  });
}
google.setOnLoadCallback(initialize);

当我按原样打开 popup.html 文件时,会显示所需的结果,但是当我加载 Chrome 扩展程序时,只能看到 div 的背景颜色。我设置的权限有什么问题还是其他问题?

谢谢,亚什。

4

1 回答 1

1

您必须将以下行添加到manifest.json才能使用来自www.google.com的资源:

"content_security_policy": "script-src 'self' https://www.google.com; object-src 'self'"

正如 Rob W 已经指出的,这是清单版本 2 中引入的一项安全功能。

于 2013-04-12T21:14:38.177 回答