我一直在制作一个grails演示网站,其中介绍了使用gmail api邮件插件使用标准,多个To收件人,HTML电子邮件,内嵌图像发送电子邮件的各种方法。 以及覆盖或使用不同gmail帐户的方法。这一切都可以找到here
在进行测试时,我注意到oauth的一个奇怪的行为,它在README的底部解释了提供的链接
不确定这一点有点令人困惑,它是如何工作的。我们说吧 我在gmail帐户用户名Bob When下生成了client_secret.json 对于第一封需要通过本网站确认的电子邮件 考虑到一个一个过程。如果我登录,那在1关闭过程中 用另一个账号来收集账号密钥验证和电子邮件 然后似乎来自bill@gmail.com即使我没有访问过 /配置Bill的帐户以使用client_secret.json文件。
因此,简而言之,如果我从account1生成secret.json文件,则从该帐户发送第一封电子邮件时。如果我碰巧从account2登录。由谷歌(此处)'me'
帐户生成的storedCredentials文件成为我的第二个帐户。即使生成密钥等的所有内容都是在account1上完成的。
这种正常行为或错误是否有意义?
答案 0 :(得分:2)
每个应用程序只需生成一次client_secret.json
文件。这是应用程序向Google标识自己的方式,生成它不会授予任何帐户任何API访问权限。相同的客户机密钥文件用于为希望授予应用程序访问其数据的所有用户执行OAuth流程。