0
以下代碼使用GitHub API檢索版本上的數據。不幸的是,這隻會返回30(默認)或最多100個項目。如何迭代請求調用並將結果存儲在對象上?
request(`https://api.github.com/repos/${owner}/${repo}/releases?page=1&per_page=30`, options, function (error, response, body) {
if (response.statusCode !== 200) {
return console.log(`Error: response code ${response.statusCode}`)
}
let data = JSON.parse(body);
data.forEach(function(element) {
// do things with data
});
});
使用page
參數,應該可以檢索超過每頁最大值的項目。問題是:如何迭代這些調用並返回一個包含所有結果的對象?
這是我曾嘗試:
function getReleases(callback, page = 1) {
request(`https://api.github.com/repos/${program.owner}/${program.repo}/releases?page=${page}&per_page=30`, options, function (error, response, body) {
if (response.statusCode !== 200 || error) {
console.log(`Error ${response.statusCode}`);
callback(null) // not sure about this
}
let data = JSON.parse(body);
callback(data);
});
}
function formatReleaseData(data) {
// do things with data
}
formatReleaseData(show_page_count);
有沒有我可以看到的回調示例? – Raymond
@Raymond請看看我的編輯 – idleberg