自动更新Firefox扩展程序链接

时间:2016-01-29 00:30:11

标签: javascript firefox firefox-addon firefox-developer-tools

我在我的网站上为我的Firefox扩展添加了内联下载:

<script type="application/javascript">
<!--
function install (aEvent)
{
  for (var a = aEvent.target; a.href === undefined;) a = a.parentNode;
  var params = {
    "Foo": { URL: aEvent.target.href,
             IconURL: aEvent.target.getAttribute("iconURL"),
             Hash: aEvent.target.getAttribute("hash"),
             toString: function () { return this.URL; }
    }
  };
  InstallTrigger.install(params);

  return false;
}
-->
</script>

和html:

<a id="download" href="https://addons.mozilla.org/firefox/downloads/file/foo-0.0.4-an+fx.xpi" iconURL="icon128.png" onclick="return install(event);">DOWNLOAD</a>

但我希望每当我发布新的更新时,链接都会更新而不必更改它。例如-lastest.xpi链接?是否有这样的东西或其他方法来获取最新的链接?

1 个答案:

答案 0 :(得分:0)

是的,您可以通过AMO API

获取此信息

URL结构如下所示:

https://addons.mozilla.org/api/[version]/addon/[id]
version = 1.5 (currently)
id = [your addon id or slug]

此示例网址使用了一个slug: https://addons.mozilla.org/en-US/firefox/api/1.5/addon/private-tab

这个示例网址使用了id,我推荐这个版本。 https://addons.mozilla.org/en-US/firefox/api/1.5/addon/422756

返回的信息是在加载项页面上显示但需要在XML文档中显示的所有内容。您需要扫描install元素。

    $.get('https://addons.mozilla.org/en-US/firefox/api/1.5/addon/private-tab').then(function(resp) {
      $('#link').attr('href', resp.documentElement.querySelector('install').textContent);
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a id="link" href="">DOWNLOAD</a>