我想使用nodejs octokit/rest库添加github用户作为组织存储库的合作者。图书馆并手动将请求发送到GitHub API使用HTTP 404 - 即使我的用户帐户具有有效的访问令牌,也找不到必要的权限。
无论他们是组织本身的成员,我都试图将GitHub用户作为组织存储库的合作者。我的请求用户可以通过个人访问令牌进行身份验证,并具有所需的权限。我将'octokit/rest的repos.addCollaborators
函数与组织名称作为所有者,repositoryName作为repo和用户的用户名添加为参数对象的用户名属性。OCTOKIT对象使用我的帐户访问令牌进行身份验证。我的用户帐户是组织的所有者。
this.octokit = new Octokit({
auth: accessToken,
log: {
debug: (msg) => { logger.debug(`${msg}`); },
error: (msg) => { logger.error(`${msg}`); },
info: (msg) => { logger.info(`${msg}`); },
warn: (msg) => { logger.warn(`${msg}`); }
},
userAgent: process.env.APP_NAME
});
// ...
this.octokit.repos.addCollaborator({
owner: ownername,
repo: url[url.length - 1],
username
}).catch((msg) => {
logger.verbose(`Error message ${msg}`);
});
关于文档,我希望将邀请发送给用户。
不幸的是我找不到404。
当我使用卷发时,也会发生同样的事情:
curl -u myUsername:token -X PUT https://api.github.com/repos/:organizationname/:reponame/collaborators/:collaboratorname?permission=push
执行会员请求时出现相同的行为。
我尝试了几个权限范围。看来前两个令牌的权限太多(?!(。工作权限范围似乎是"管理:org,通知,回购,写作:讨论"。