【发布时间】:2021-01-24 03:02:30
【问题描述】:
我需要通过简单的 REST 调用从我的服务器发送电子邮件,从我的后端服务器电子邮件地址发送到系统中注册的电子邮件地址。
但是有一个问题,请耐心等待。
到目前为止,我看到的很多文档似乎都假设我想访问客户的 gmail 数据,但我没有,我只使用客户的地址作为目的地。
我见过的很多示例都涉及到授权访问 api 的视觉提示。
但是为什么?
他们假设我将通过移动设备进行 apicalls,代表客户行事,这需要视觉提示以获得同意。但这些都不适用于我的用例。
问题是,永远只有一个发件人,“我”(为后端服务器指定的公司电子邮件)。
我应该能够在 google 控制台上创建一个秘密 api_key,并将其发送到我的请求标头中(就像 FIREBASE 那样),或者使用该密钥生成一个令牌,然后我将其发送到 api 端点(如 Paypal确实)。
我希望能够做类似的事情:
POST https://gmail.googleapis.com/upload/gmail/v1/users/{userId}/messages/send
Authorization: key=<key_created_on_google_console_or_token_obtained_using_said_key>
{
message stuff...
}
google 上的 api 参考说我需要使用 OAuth 凭据创建授权,然后我应该使用它来创建插入为的短期令牌
"Authorization: Bearer <TOKEN>"
在我的下一个 apicalls 中,直到它过期。但是……
在控制台中,创建一个新的 OAuth2.0 客户端 ID,说我需要创建一个应用程序。但我已经有一个项目和一个 api_key(具有 gmail api 的权限)。并且说的应用程序将不得不被发送以供审查!怎么回事?
所以..
如何使用 REST 调用从我自己控制的电子邮件地址发送电子邮件。
都是服务器端,不需要访问任何用户数据(甚至我自己的数据都没有),我已经控制了发件人地址,我已经在google控制台上创建了一个项目,我已经创建了一个api_key。
OAuth 似乎认为我在做一些我没有做的事情,所以我错过了什么?
谢谢。
【问题讨论】:
-
因为都是服务器端,你在后端使用的是哪种编程语言?
标签: oauth-2.0 google-api google-oauth gmail-api