gpt4 book ai didi

javascript - 类型错误 : Cannot read property 'redirect_uris' of undefined

转载 作者:行者123 更新时间:2023-12-03 20:53:20 33 4
gpt4 key购买 nike

我想编写一个应用程序来处理我的一些以某种方式标记的 gmail 电子邮件。

示例代码 here为我的代码提供了一个起点(我已经使用 promises 而不是 async await 重写了它):

'use strict';

const path = require('path');
const { google } = require('googleapis');
const { authenticate } = require('@google-cloud/local-auth');

authenticate({
keyfilePath: path.join(__dirname, 'key.json'),
scopes: [
'https://www.googleapis.com/auth/gmail.readonly',
],
}).then(auth => {
google.options({ auth })

gmail.users.messages.list({
userId: "me",
}).then((res) => {
console.log(res.data)
}).catch(err => {
console.log(err)
})
}).catch(err => {
console.log(err);
})

以下是我到目前为止采取的步骤:
  • 创建了一个谷歌云项目
  • 创建了一个具有所有者 Angular 色的服务帐户
  • 从服务帐户下载 key 文件并将其复制到我的代码目录为key.json
  • 运行代码:
  • GOOGLE_APPLICATION_CREDENTIALS="$(pwd)/key.json" node index.js

    这是我得到的错误:
    TypeError: Cannot read property 'redirect_uris' of undefined
    at authenticate (/home/user/dev/gmail-processor/node_modules/@google-cloud/local-auth/build/src/index.js:46:15)
    at Object.<anonymous> (/home/user/dev/gmail-processor/index.js:7:1)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)

    似乎它期望带有重定向 url 的 oauth 凭据。此外,我正在导出 GOOGLE_APPLICATION_CREDENTIALS 似乎是多余的。当我包括 keyfilePath当我调用 authenticate .我做错了什么,我怎样才能让这段代码成功执行?

    最佳答案

    我通过使用解决了这个问题:

    const auth = new google.auth.GoogleAuth({
    keyFile: path.join(__dirname, 'key.json'),
    scopes: ['https://www.googleapis.com/auth/gmail.readonly'],
    });
    代替:
    const auth = await authenticate({
    keyfilePath: path.join(__dirname, 'key.json'),
    scopes: ['https://www.googleapis.com/auth/gmail.readonly'],
    });

    关于javascript - 类型错误 : Cannot read property 'redirect_uris' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61912639/

    33 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com