下载GitHub项目最新版本的链接

use*_*275 5 html javascript ajax github github-api

我想在我的网站上添加一个项目最新github版本的下载链接.例如,链接https://github.com/mongodb/mongo/archive/r3.0.0-rc7.zip确实链接到最新版本(截至今天),但我不想硬编码版本号网站.

我发现了几个关于这个问题的问题,使用curl,ajaxphp的答案.

我使用ajax尝试了使用github发布API的解决方案:

<!DOCTYPE html>

<HTML> <BODY>

<script language="javascript" type="text/javascript">   
    $(document).ready(function () { 
        GetLatestReleaseInfo();   
    });   

    function GetLatestReleaseInfo() {
      $.getJSON("https://github.com/mongodb/mongo/releases").done(function (json) {
         var release = json[0];
         var asset = release.assets[0];
         var downloadURL = "https://github.com/mongodb/mongo/releases" + release.tag_name + "/" + asset.name;
         $(".mongodb-download").attr("href", downloadURL);   
      });    
    } 
</script>

<a href="GetLatestReleaseInfo();">Link</a> 
<a href="" onclick="location.href=this.href+downloadURL;return false;">Link2</a> 
<a href="" onclick="location.href=this.href+mongodb-download;return false;">Link3</a>

</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)

但我无法正确调用javascript函数,因为它似乎在我的上面尝试(Link,Link2和Link3).我对javascript或ajax不太熟悉,所以我很感激任何帮助; 也许没有Ajax有一种更简单的方法?

Gal*_*Gal 9

您正在加载一个html页面而不是他们的REST API.获取标签的正确URL是https://api.github.com/repos/mongodb/mongo/tags

你可能想在这里阅读更多关于github api的信息 - https://developer.github.com/v3/repos/

你的HTML看起来像这样:

<!DOCTYPE html>

<HTML> <BODY>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script language="javascript" type="text/javascript">  

$(document).ready(function () {
     GetLatestReleaseInfo();  
});  


function GetLatestReleaseInfo() {
   $.getJSON("https://api.github.com/repos/mongodb/mongo/tags").done(function (json) {
        var release = json[0];
        var downloadURL = release.zipball_url;
        $("#mongodb-download").attr("href", downloadURL);  
   });    
}  
</script>

<a id='mongodb-download' href="">Download latest mongo</a>

</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)