javascript - 使用 pm2 进行 Google Sheets API 身份验证
问题描述
我正在尝试设置一个 node.js 项目以使用 Google Sheets API 并通过 pm2 运行它。
该应用程序将用于写入 googlesheet。但是,我还没有找到绕过授权提示或将值传递给在 pm2 中运行的项目的方法。
我正在使用以下指南在 node.js 项目中设置 Google Sheets API: https ://developers.google.com/sheets/api/quickstart/nodejs
在本指南中,我使用创建的 OAuth 2.0 凭据设置了我的 Google Cloud Platform 项目。使用 pm2,在访问 node.js 项目的 pm2 日志中返回的授权链接后,我还没有找到输入代码的方法。
一年前我发现了一篇类似的帖子: Gmail API Nodejs and PM2 authentication
在这篇文章中,我使用以下文章设置了一个服务帐户: https ://developers.google.com/identity/protocols/oauth2/service-account
然后,我从指南中的 OAuth 客户端切换到 google JWT 客户端以使用新的服务帐户凭据。但是,这返回了我无法在 PM2 日志中响应的相同提示。
对此项目的任何建议表示赞赏。我认为我要尝试的下一个选项是直接运行项目以获取根据指南创建的令牌,然后强制应用程序直接使用它。
解决方案
通过使用控制台命令“node”首先在 pm2 之外运行项目来解决此问题。根据教程指南在项目目录中。然后我可以在终端提示符上输入验证码。
这创建了我项目所需的令牌。然后我可以毫无问题地在 pm2 中启动它并使用 Google 电子表格 API。
不需要使用服务帐户,只需像指南中的基础项目一样使用它设置的凭据。
推荐阅读
- android - Flutter - 从 Firebase 存储中获取所有图像
- angular - 将对象从 LoginComponent 传递到 ProfilComponent
- reactjs - 如何使用 redux 在 React Native 中清除发送按钮上的 TextInput
- android - Vimeo 视频播放器 - 安卓
- node.js - Preact 到底是什么?我可以使用节点模块吗?
- google-apps-script - 突然出现 Google Apps 脚本错误?无法访问未定义的属性
- python - 英文到法文日期转换问题
- html - 仅 CSS 视差滚动停止与 IOS/PadOS13 一起使用?
- npm - 我应该在 webpack 中包含哪个 babel-* 包来支持 IE11
- asp.net-core - 使用asp.net core 3.0 grpc时如何配置keepalive?