首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何实例化Octokit for user-as-a- oAuth?

如何实例化Octokit for user-as-a- oAuth?
EN

Stack Overflow用户
提问于 2021-09-10 15:22:24
回答 1查看 39关注 0票数 0

我希望我的GitHub应用程序代表用户执行操作,比如创建问题。

我以这种方式验证我的用户:

代码语言:javascript
复制
const { createOAuthAppAuth } = require('@octokit/auth-oauth-app');

const auth = createOAuthAppAuth({
  clientType: 'oauth-app',
  clientId: clientGithubID,
  clientSecret: clientSecretGithub,
});

const userAuthenticationFromWebFlow = await auth({
  type: 'oauth-user',
  code,
  state: userId,
});

// console.log(useAuthenticationFromWebFlow)
// {
//   "type": "token",
//   "tokenType": "oauth",
//   "clientType": "oauth-app",
//   "clientId": "Iv1.CLIENTID",
//   "clientSecret": "CLIENTSECRET",
//   "token": "ghu_bunchofchars",
//   "scopes": []
// }

看起来我得到的令牌是好的。

现在的问题是,当我稍后尝试在我的代码中创建Octokit时,这不起作用

代码语言:javascript
复制
octokit = new Octokit({
  authStrategy: userAuthenticationFromWebFlow,
});
代码语言:javascript
复制
await octokit.issues.createComment({...props})

创建Octokit实例的正确方式是什么?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-10 15:55:11

所以我找到了答案,

也许这能帮助到某些人。

代码语言:javascript
复制
const { createOAuthAppAuth } = require('@octokit/auth-oauth-app');

    octokit = new Octokit({
      authStrategy: createOAuthAppAuth,
      auth: userAuthenticationFromWebFlow.token,
    });

而且它起作用了!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69134485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档