[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ただいまコメントを受けつけておりません。
原則としては GitLab Documentation にある通りに実行すればとれる。
const request = require('request'); // GITLAB_URL は https://gitlab.example.com 等 // PRIVATE_TOKEN は profile/account から取得できる。これは秘密にするべき情報 const gitlabUrl = GITLAB_URL + '/api/v3/users?private_token=' + PRIVATE_TOKEN; // SSL 証明書がオレオレな場合に付与 // process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = '0'; function getGitlabUsers(url, callback, opt_num, opt_array) { var num = opt_num || 0; var list = opt_array || []; request(url + '&page=' + num, function(e, res, body){ var result = JSON.parse(body); if(result.length) { list = list.concat(result); getGitlabUsers(url, callback, num + 1, list); } else { callback(list); } }); } getGitlabUsers(gitlabUrl, function(userList) { console.log(userList.length, '人のユーザが登録されているぴょん'); });
Promise とか使えばもう少しきれいに書けると思う。node を使わなくても上記 gitlabUrl
への curl を打ち続ければユーザリストは取れる。ただし、一度に20人しか取れず、21人目以降は page 引数を与える必要があるため、スクリプトに任せるが吉だと思う。
ただいまコメントを受けつけておりません。