Gmail API - 值"= Get Labels google-api-dotnet-client/1.25.0.0 (gzip)"的格式无效



我开始探索gmail api。我遵循教程以显示标签列表(https://developers.google.com/gmail/api/quickstart/dotnet(,并且工作正常。

高度赞赏的帮助

当我修改程序流时,这里给了我错误。我无法追踪错误。它在Execute()方法上给了我错误。

错误:值的格式'=获取标签 Google-api-dotnet-client/1.25.0.0(gzip('是无效的

这是我的代码。

public static class Labels
{
    public static void ListLabels ( )
    {
        try
        {
            var scope = new [] { GmailService.Scope.GmailReadonly };
            var service = Authorization.GetGmailService(scope, "AppName = Get Labels");
            if (service != null)
            {
                var requestListLabels = service.Users.Labels.List("me");
                var labelsList = requestListLabels.Execute().Labels;
                Console .WriteLine ( "nn---- Labels List ----" );
                if ( labelsList != null && labelsList .Count > 0 )
                {
                    foreach ( var label in labelsList )
                    {
                        Console .WriteLine ( "{0}", label .Name );
                    }
                }
                else
                {
                    Console .WriteLine ( "No labels available." );
                }
            }
            else
            {
                Console.WriteLine("Gmail service not available.");
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
            throw;
        }
    }
}

public class Authorization
{
    public object GmailAuth2 ( string[] scopes )
    {
        try
        {
            using ( var stream = new FileStream ( "Secrets/client_secret.json", FileMode .Open, FileAccess .Read ) )
            {
                var clientsecrets = GoogleClientSecrets .Load ( stream ) .Secrets;
                var creds = GoogleWebAuthorizationBroker .AuthorizeAsync (
                    clientsecrets,
                    scopes,
                    "user",
                    CancellationToken .None,
                    new FileDataStore(this.GetType().ToString())
                ) .Result;
                return creds;
            }
        }
        catch ( Exception ex )
        {
            return ex .Message;
        }
    }
    public static GmailService GetGmailService(string[] scopes, string appname)
    {
        try
        {
            var authproblem = new Authorization().GmailAuth2(scopes);
            if (authproblem is string)
            {
                Console.WriteLine(authproblem);
                return null;
            }
            var srvc = new GmailService(new BaseClientService.Initializer
            {
                HttpClientInitializer = (UserCredential)authproblem,
                ApplicationName = appname
            });
            return srvc;
        }
        catch (Exception e)
        {
            Console.WriteLine(e);
            return null;
        }
    }
}

这是主要功能

class GmailMailBox
{
    static void Main ( string [ ] args )
    {
        Labels.ListLabels();
        Console .WriteLine ( "Press key to exit ..." );
        Console .Read ( );
    }
}

给我这个错误。错误图片

这几乎可以肯定是由于"AppName = Get Labels"应用程序名称。将其更改以删除空间和" =",我怀疑此错误会消失。

相关内容

最新更新