我想在我的网站上添加一个项目最新 github 版本的下载链接。例如链接 https://github.com/mongodb/mongo/archive/r3.0.0-rc7.zip确实链接到最新版本(截至今天),但我不想在网站上硬编码版本号。
我发现了几个关于这个问题的问题,answers使用 curl ,ajax或 php .
我尝试使用使用 github 发布 API 的 ajax 解决方案:
<!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>
但我无法正确调用 javascript 函数,正如我在上面的尝试(Link、Link2 和 Link3)中所显示的那样。我对 javascript 或 ajax 不是很熟悉,所以我很感激任何帮助;也许没有 Ajax 有更简单的方法?
最佳答案
您正在加载一个 html 页面而不是他们的 REST API。获取标签的正确 url 是 https://api.github.com/repos/mongodb/mongo/tags
You may want to read more about github api over here - 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>
关于javascript - GitHub 项目最新版本的下载链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28236859/