Gmail API - 值 '= Get Labels google-api-dotnet-client/1.25.0.0 (gzip)' 的格式无效
Posted
技术标签:
【中文标题】Gmail API - 值 \'= Get Labels 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 invalidGmail API - 值 '= Get Labels google-api-dotnet-client/1.25.0.0 (gzip)' 的格式无效 【发布时间】:2017-09-17 00:07:46 【问题描述】:我开始探索 Gmail API。我按照教程显示标签列表(https://developers.google.com/gmail/api/quickstart/dotnet),效果很好。
非常感谢帮助
当我修改程序流程时,这里给了我错误。我无法追踪错误。它给了我Execute()
方法的错误。
错误:value '= Get Labels 的格式 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 ( "\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;
这里是主函数
class GmailMailBox
static void Main ( string [ ] args )
Labels.ListLabels();
Console .WriteLine ( "Press key to exit ..." );
Console .Read ( );
给我这个错误。 error picture
【问题讨论】:
【参考方案1】:这几乎可以肯定是由于"AppName = Get Labels"
应用程序名称。
更改此项以删除空格和“=”,我怀疑此错误会消失。
【讨论】:
以上是关于Gmail API - 值 '= Get Labels google-api-dotnet-client/1.25.0.0 (gzip)' 的格式无效的主要内容,如果未能解决你的问题,请参考以下文章
使用 Gmail API 在 html 中检索电子邮件/消息正文