刚刚开始使用 Google Rest API,特别是 Gmail API。我无法找到简单的示例和答案。
Gmail 的 Google API 是否需要 Oauth2?...或者可以使用 API 密钥和服务帐户的某种组合吗?如果我们不必使用 Oauth,我们就不会使用,但我找不到示例,而且谷歌文档对我来说也不清楚。我可以使用 Google 服务帐户获取访问令牌并将其与我的 API 密钥结合使用吗?
Gmail 的 Google API 是否需要 Oauth2?
Gmail 访问私人用户数据。为了访问私人用户数据,您的应用程序需要数据所有者的许可才能访问它。 为此,我们使用 Oauth2。
或者可以使用 API 密钥和服务帐户的某种组合吗?
Api 密钥仅用于访问公共数据。您无法使用 api 密钥访问私人用户数据。
如果您在 Google Workspace 帐户上配置域范围授权,则服务帐户可以与 gmail api 一起使用。那么您的服务帐户将能够模拟域中的任何用户。
需要明确的是,服务帐户不能与标准 google gmail 帐户一起使用,它只能与工作区域帐户一起使用。
Google api for .NET v 1.68 nuget 包允许 API 密钥代替 OAuth2 身份验证。不使用域的普通帐户,只有普通用户可以启用 API 密钥并将密钥范围缩小到仅 GMAIL。之后: 用途:
GmailService service = new GmailService(new
BaseClientService.Initializer()
{
ApiKey= "myApiKey Here",
ApplicationName = "ApplicationName"
});