传递给createTokenAuth的令牌不是字符串:octkit,auth令牌



我正在尝试构建一个GitHub应用程序,并遵循https://probot.github.io/docs/和https://octokit.github.io/rest.js/v17#authentication.它基本上是一个nodejs应用程序。

我没有使用nodejs或typescript的经验,甚至没有使用probot框架的经验。

PRIVATE_KEY_PATH位于.env文件中,如下所示:

PRIVATE_KEY_PATH=my-app.2020-04-03.private-key.pem

.pem文件位于项目的根目录中

打印字符串的类型:-------------令牌类型----string

index.js

/**
* This is the main entrypoint to your Probot app
* @param {import('probot').Application} app
*/

const{Octokit} = require("@octokit/rest");
const{createAppAuth} = require("@octokit/auth-token");
console.log('PRIVATE_KEY',process.env.PRIVATE_KEY_PATH);
console.log('-------------TypeOf token ----', typeof process.env.PRIVATE_KEY_PATH)
const appOctokit = new Octokit({
authStrategy:createAppAuth,
auth:{
id:12345,
privateKey: process.env.PRIVATE_KEY_PATH,
//  privateKey: 'token ${process.env.PRIVATE_KEY_PATH}'
}
});

我不断得到以下错误:

10:52:51.166Z ERROR probot: [@octokit/auth-token] Token passed to createTokenAuth is not a string

在互联网上找不到关于这个话题的太多帮助。我甚至试着浏览octokit的代码https://github.com/octokit/auth-token.js/blob/master/src/index.ts而且我的代码似乎没有做错什么。

除了文档之外,没有太多资源可以参考GitHub应用程序或probot框架的问题。StackOverflow也有大约20-30个与GitHub应用程序或probot框架相关的问题。

编辑1:开始

运行以下代码:

/**
* This is the main entrypoint to your Probot app
* @param {import('probot').Application} app
*/
const{Octokit} = require("@octokit/rest");
const{createAppAuth} = require("@octokit/auth-token");
console.log('PRIVATE_KEY',process.env.PRIVATE_KEY_PATH);
console.log('-------------TypeOf token ----', typeof process.env.PRIVATE_KEY_PATH)

产生以下错误:

ERROR probot: appFn is not a function
TypeError: appFn is not a function

编辑1:结束

如果您使用Probet,您不需要加载自己的@octokit/rest或任何@octokit/auth-*包,它都内置在Probet 中

您是否尝试了上显示的示例代码https://probot.github.io/

module.exports = app => {
app.on('issues.opened', async context => {
const params = context.issue({
body: 'Hello World!'
})
await context.github.issues.createComment(params)
})
}

Probet将自动读取您的.env文件的内容,查找PRIVATE_KEY_PATH环境变量,读取该位置的文件内容,并为您的设置JWT/安装身份验证

相关内容

  • 没有找到相关文章

最新更新