无法使用 Octokit/rest 验证为 Github 应用程序

Posted

技术标签:

【中文标题】无法使用 Octokit/rest 验证为 Github 应用程序【英文标题】:Unable to Authenticate as Github App with Octokit/rest 【发布时间】:2020-11-25 13:31:39 【问题描述】:

我无法使用 Octokit/rest 作为应用程序进行身份验证,并且文档失败了...

这是我的身份验证例程:

async function getGithub(payload) 
  const auth = createAppAuth(
    id: parseInt(process.env.APP_ID, 10),
    privateKey: getPrivateKey()
  )

  const installationAuth = await auth(
    type: 'installation',
    installationId: payload.installation.id,
  )

  return new Octokit(installationAuth)

谁能指出我正确的方向?

当我向客户端发出请求时,我只收到 404。我知道存储库存在,并且 Github 的文档指出,如果客户端无权访问,未经授权的请求可能会导致 404。

【问题讨论】:

【参考方案1】:

我已经解决了!

我没有将正确的信息传递给机器人。工作函数如下所示。

async getGithub(context) 
  const auth = createAppAuth(
    id: parseInt(process.env.APP_ID, 10),
    privateKey: getPrivateKey()
  )

  const installationAuth = await auth(
    type: 'installation',
    installationId: context.payload.installation.id,
  )

  return new Octokit(
    auth: installationAuth.token // directly pass the token
  )

如此接近!

【讨论】:

如果您认为有任何潜在的改进可以应用于 probot 以帮助我们作为用户,请随时在 Github 上打开一个问题 :)

以上是关于无法使用 Octokit/rest 验证为 Github 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

使用 git-svn 创建上游分支时无法进行身份验证

无法通过 Git for Windows 使用/调试 SSH 身份验证

Netbeans 8.2 无法验证 Git 凭证?

无法使用 Git Bash 对 Visual Studio Team Services 进行身份验证

无法通过git命令对TFS进行身份验证

Xcode5 bot 无法对 git repo 进行身份验证