如何解决将Google Cloud Service帐户与群组电子邮件连接时出现问题
我在Gsuite管理控制台中将no-reply@domain.com
设置为电子邮件组。现在,我想使用我在使用nodemailer的node js中使用该电子邮件地址发送电子邮件。为此,我在Google Cloud中创建了服务帐户,并将no-reply@domain.com
组添加为所有者。问题是,当我在节点应用程序中使用这些生成的凭据时,会抛出错误unauthorized_client
。
我在Gsuite的API权限中添加了client_id和必需的GMAIL范围。只有用户帐户可以使用服务帐户,而不能使用组电子邮件。
这是我的示例nodemailer代码
const smtpTransport = nodemailer.createTransport({
host: 'smtp.gmail.com',port: 465,secure: true,auth: {
type: "OAuth2",user: "no-reply@domain.com",serviceClient: "109120716xxxxxxxxxxxxxx",privateKey: "",}
});
我正在按照本教程来完成本https://medium.com/@imre_7961/nodemailer-with-g-suite-oauth2-4c86049f778a
解决方法
您需要确保以下事项:
-设置API keys -确保为客户ID启用Gmail API。您可以遵循此doc并在“ Google API管理器”中搜索“ Gmail API”。
- 在请求用户权限时,请确保您的客户端为Gmail SMTP设置了“ https://mail.google.com/”范围。
这里有一个类似的Stackoverflow thread,您可以参考。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。