Gmail API-值'=获取标签google-api-dotnet-client/1.25.0.0(gzip)'的格式无效 [英] Gmail API - The format of value '= Get Labels google-api-dotnet-client/1.25.0.0 (gzip)' is invalid

查看:47
本文介绍了Gmail API-值'=获取标签google-api-dotnet-client/1.25.0.0(gzip)'的格式无效的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我开始探索Gmail API.我按照本教程显示了标签列表( https://developers.google.com/gmail/api/quickstart/dotnet ),并且运行良好.

I started exploring Gmail API. I followed the tutorial to show labels list (https://developers.google.com/gmail/api/quickstart/dotnet), and worked fine.

HELP受到高度赞赏

HELP is highly appreciated

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

When I modified the flow of program, here it gives me the error. I cannot trace the error. It gives me error on Execute() method.

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

Error: The format of value '= Get Labels google-api-dotnet-client/1.25.0.0 (gzip)' is invalid

这是我的代码.

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 ( "\n\n---- 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;
        }
    }
}

这是MAIN功能

class GmailMailBox
{
    static void Main ( string [ ] args )
    {
        Labels.ListLabels();

        Console .WriteLine ( "Press key to exit ..." );
        Console .Read ( );
    }
}

给我这个错误.错误图片

推荐答案

这几乎可以肯定是由于"AppName = Get Labels" 应用程序名称引起的.更改此项以删除空格和'=',我怀疑此错误将消失.

This is almost certainly due to the "AppName = Get Labels" application name. Change this to remove the spaces and '=', and I suspect this error will go away.

这篇关于Gmail API-值'=获取标签google-api-dotnet-client/1.25.0.0(gzip)'的格式无效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆