我如何在Asp.net中使用Gmail API

时间:2019-10-30 13:06:04

标签: asp.net asp.net-web-api gmail-api

我正在使用asp.net在我的网站上使用gmail api,但是我在获得凭据时选择了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;
    }

1 个答案:

答案 0 :(得分:0)

Web应用程序(ASP.NET MVC)

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

ServiceAccountCredential

我认为您正在this way中尝试做更多的事情,该方法适用于另一种实现方式。