如何在不本地存储凭据的情况下建立谷歌oAuth客户端?

我正在尝试建立一个 google oAuth2 客户端,golang.org/x/oauth2/google以便我可以为自己安排一些电子邮件提醒。如果我正确理解文档,大致的过程是这样的。

  1. 获取oauth2.Config实例

  2. 使用配置从 google 获取令牌

  3. 使用token建立客户端

我遇到的问题是,所有用于生成配置的函数golang.org/x/oauth2/google似乎都需要一个本地凭证文件,从中读取我假设的 Google API 客户端 ID 和客户端密码。

这对于持久运行时来说很好,但该应用程序将在没有磁盘的情况下在易失性位置运行。我觉得我一定缺少一些明显的方法来使用我存储在环境中的 api 客户端 ID 和秘密来创建配置。我是否错误地使用了这个包?如何oauth2.Config在没有本地文件的情况下创建 的实例?


米脂
浏览 90回答 1
1回答

宝慕林4294392

我可以想到你可以做的几件事:有一个ConfigFromJSON函数可以将 JSON 文档获取为 []byte。您可以找出该文件的样子,并使用环境变量生成它。看起来这个包所做的只是准备一个 oauth2 配置。您可以使用您拥有的凭据自行准备配置,完全绕过库。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go