首页 > 解决方案 > 使用 MS Graph 添加事件订阅时出错

问题描述

我正在使用 MS 图形订阅端点 ( https://graph.microsoft.com/v1.0/subscriptions ) 为我的一些最终用户 Outlook 帐户添加日历事件订阅。对于某些帐户(不是全部),此错误会失败:

{
  "error": {
    "code": "ExtensionError",
    "message": "Operation: Create; Exception: [Status Code: ServiceUnavailable; Reason: Target resource 'xxxx-xxx-xxx-xxxx' hosted on database 'xxxx-xxx-xxx-xxxx' is currently on backend 'Unknown']",
    "innerError": {
      "date": "2021-05-31T08:27:37",
      "request-id": "c7c38d7a-617c-4601-9684-0f924e86248a",
      "client-request-id": "c7c38d7a-617c-4601-9684-0f924e86248a"
    }
  }
}

就在添加订阅之前,我的代码已经能够将新事件添加到同一个日历中,所以我认为我的访问令牌具有访问日历的正确权限。所以我不明白如何获得“ExtensionError”?

这是我运行以尝试添加订阅的 C# 代码:

var subscription = new Subscription
{
    ChangeType = "created,updated,deleted",
    NotificationUrl = GetNotificationUrl(),
    Resource = $"me/calendars/{calendarId}/events",
    ExpirationDateTime = DateTimeOffset.Now.AddHours(70),
    ClientState = clientState,
};

await graphServiceClient
    .Subscriptions
    .Request()
    .Header("Prefer", $"IdType=\"ImmutableId\"")
    .AddAsync(subscription);

标签: outlookmicrosoft-graph-api

解决方案


推荐阅读