将URL的内容传递给回调的功能

时间:2015-03-11 05:30:48

标签: javascript google-chrome-extension xmlhttprequest

我正在创建Google Chrome扩展程序。

如何创建一个将URL和回调函数作为参数的函数,获取feed,然后将其传递给回调函数?

这个功能可以吗?

  function fetch_feed(url, callback) {
        var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function(data) {
      if (xhr.readyState == 4) {
        if (xhr.status == 200) {
          var data = xhr.responseText;
          callback(data);
        } else {
          callback(null);
        }
      }
    }
    xhr.open('GET', url, true);
    xhr.send();
}

1 个答案:

答案 0 :(得分:0)

基本答案。整个方法需要进一步的功能,以便chrome扩展功能正常运行,但您上面列出的基本功能应该有效。

Chrome.extension.sendRequest会将请求发送到您的分机的其他可能正在收听的部分。 Background.html正在倾听这个确切的请求!

请求从popup.html传递到background.html,后者获取Feed,然后将其传递回popup.html,然后popup.html调用一个名为display_stories的函数,并传递来自background.html的响应。

显示故事功能(我不会在这里逐步完成但您可以在源代码中看到)然后使用一些jQuery和JavaScript来解析XML提要并在弹出窗口中呈现故事。