Gmail撰写api:500后端错误

时间:2014-07-03 09:42:58

标签: c# google-api gmail-api

我尝试使用服务帐户为用户创建草稿。因此,我在开发者控制台中创建了一个服务帐户,并授予其访问gmail compose api的权限。我找到了这个例子:https://google-developers.appspot.com/api-client-library/dotnet/guide/aaa_oauth?hl=lv#service_account并将其更改为使用gmail compose api,如下所示:

var certificate = new X509Certificate2(_privateKey2, "notasecret",X509KeyStorageFlags.Exportable);

ServiceAccountCredential credential = new ServiceAccountCredential(
    new ServiceAccountCredential.Initializer(_emailAddressService)
        {
            Scopes = new[] {GmailService.Scope.GmailCompose}
        }.FromCertificate(certificate));

// Create the service.
var service = new GmailService(new BaseClientService.Initializer
{
    HttpClientInitializer = credential,
    ApplicationName = "Plus API Sample",
});

var draft = new Draft();
draft.Message = new Message();
draft.Message.Payload = new MessagePart();
draft.Message.Payload.Body = new MessagePartBody();
draft.Message.Payload.Body.Data = "";

draft = service.Users.Drafts.Create(draft, "someuser@domain.com").Execute();

这应创建一个空草稿,我已使用https://developers.google.com/gmail/api/v1/reference/users/drafts/create上的API资源管理器对其进行了测试。但是,我所得到的只是一个没有任何有用信息的后端错误:

Google.Apis.Requests.RequestError
Backend Error [500]
Errors [
    Message[Backend Error] Location[ - ] Reason[backendError] Domain[global]
]

我已经检查了我使用Fiddler发送的请求,它看起来像这样: {"消息" {"有效载荷" {"主体" {"数据":""}}与我使用API​​资源管理器的请求完全相同。 我在这做错了什么?非常感谢任何帮助。

更新:我也试过

service.Users.Drafts.List("user@2domain.com").Execute();

messages = service.Users.Messages.List("user@doamin.com").Execute();

我收到相同的错误消息。看起来我无法访问任何API?

0 个答案:

没有答案