Javascript 如何使用API获取Github repo发布URL

Javascript 如何使用API获取Github repo发布URL,javascript,node.js,api,github,github-api,Javascript,Node.js,Api,Github,Github Api,我正在使用NodeJS和githubapi模块,尝试使用zipball\u URL属性以编程方式获取GitHub发布URL,然后在本地保存.zip文件 点击GitHub API提供的URL并不能正确保存.zip文件,尽管GitHub UI URL中的硬编码(取自release选项卡)可以完美地工作 作为旁注,GitHub API提到了,尽管它的响应是“找不到” 我正在使用的代码 github.releases.getRelease({ owner: 'my-username',

我正在使用NodeJS和githubapi模块,尝试使用
zipball\u URL
属性以编程方式获取GitHub发布URL,然后在本地保存.zip文件

点击GitHub API提供的URL并不能正确保存.zip文件,尽管GitHub UI URL中的硬编码(取自release选项卡)可以完美地工作

作为旁注,GitHub API提到了,尽管它的响应是“找不到”

我正在使用的代码

github.releases.getRelease({
    owner: 'my-username',
    repo: 'my-repo-name',
    id: '1337' //release number
}, function(err, data) {
    if(err) console.error(data);

    //data.zipball_url is the release zip URL
})
稍后在代码中

request(data.zipball_url)
    .pipe(fs.createWriteStream(ZIP_FILE_LOCATION))
    .on('close', function() {
        resolve();
    });
返回的URL是重定向,这是请求默认遵循的内容。我做错了什么?感谢您的帮助

API返回不起作用的URL,例如(创建零字节zip):

https://api.github.com/repos/my-username/my-repo-name/zipball/release-tag

GitHub UI使用的URL确实有效:


https://github.com/my-username/my-repo-name/archive/release-tag.zip

您确定您的
发布标签
部分正确吗?例如:
https://api.github.com/repos/angular/angular/zipball/2.0.0-build.3e3745c.js
下载一个有效的ZIP文件,删除末尾的标识符将下载最新版本。您确定您的
发布标签
部分正确吗?例如:
https://api.github.com/repos/angular/angular/zipball/2.0.0-build.3e3745c.js
下载有效的ZIP文件,删除末尾的标识符将下载最新版本。