如何在 asp.net 中使用 gmail api [重复]

Posted

技术标签:

【中文标题】如何在 asp.net 中使用 gmail api [重复]【英文标题】:How do I use gmail api in asp.net [duplicate] 【发布时间】:2020-02-25 19:02:14 【问题描述】:

我在我的网站上使用 gmail api 和 asp.net,但我在获取凭据时选择了 Web 客户端,但出现错误

我使用 GoogleWebAuthorizationBroker.AuthorizeAsync 但是

“错误:redirect_uri_mismatch”我得到一个错误。

如何使用。

UserCredential credential; try

        using (var stream = new FileStream(json, FileMode.Open, FileAccess.Read))
        
            credential = await GoogleWebAuthorizationBroker.AuthorizeAsync(
                GoogleClientSecrets.Load(stream).Secrets,
                new[]  GmailService.Scope.GmailReadonly, GmailService.Scope.MailGoogleCom, GmailService.Scope.GmailModify ,
                v1,
                CancellationToken.None,
                new FileDataStore(uygulamaAdi)
                );
        
        var gmailService = new GmailService(new BaseClientService.Initializer()
        
            HttpClientInitializer = credential,
            ApplicationName = uygulamaAdi
        );
        return gmailService;
    

【问题讨论】:

您需要创建一个minimal reproducible example。不要只描述你的代码,展示你的代码。 【参考方案1】:

Web 应用程序 (ASP.NET MVC)

当您使用 ASP.NET 时,您需要在 Google API Console 中设置指向您网站的重定向 URI,这就是您获得 Error: redirect_uri_mismatch" 的原因。 Here 您可以看到一个很好的解释,说明如何为这种情况正确配置您的凭据。

ServiceAccountCredential

我认为您试图在 this way 中做更多的事情,这适用于另一种类型的实现。

【讨论】:

以上是关于如何在 asp.net 中使用 gmail api [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用带有 OAuth 令牌的 Asp.Net MVC 中的 gmail API 更快地获取日期明智的电子邮件

尝试使用 Google.Apis.Gmail 从 asp.net core web api 应用程序从谷歌工作区发送电子邮件时出错

如何在 C# 中使用带有服务帐户的 gmail api 或 google Oauth 来发送邮件?

如何使用 GMail 的 SMTP 服务器从 ASP.NET 站点发送电子邮件? [复制]

文件 API 文件上传 - 在 ASP.NET MVC 中读取 XMLHttpRequest

asp.net '无法绑定多部分标识符“abc@gmail.com”。'