MS Graph API:请求必须专门包含扩展更改

MS Graph API: Requests must contain extension changes exclusively

我想使用 MS Graph 向现有资源添加数据扩展 API。

为此,我向以下端点发出 POST 请求:

https://graph.microsoft.com/v1.0/users/[USER_ID]/events/[EVENT_ID]/extensions

具有以下请求正文:

{
        "@odata.type": "Microsoft.Graph.OpenTypeExtension",
        "extensionName": "[MY_EXTENSION_NAME]",
        "my_field": "my_value"
}

但有时,我得到的唯一回应是:

{
  "error": {
    "code": "BadRequest",
    "message": "Requests must contain extension changes exclusively.",
    "innerError": {
        "request-id": "c10c8e95-dd89-455b-9a83-3d2441918618",
        "date": "2017-02-21T21:10:55"
    }
  }
}

这条消息是什么意思?

发现,以下请求有效:

{
        "@odata.type": "Microsoft.Graph.OpenTypeExtension",
        "extensionName": "[MY_EXTENSION_NAME]"
}

所以这个扩展点没有任何价值,这使得它有点无用。最奇怪的是,它与该值一起工作了几个星期。

我一直遇到这个问题,但我认为发生的事情是我正在使用补丁消息来更新扩展。因为这是间歇性的,我怀疑在某些随机情况下会添加空扩展名,然后 API 允许更新不存在的 ID。 它有时会在回复邮件时引起,有时不会 - 在这两种情况下,这是 outlook365 发件人和收件人。

如果在我的草稿消息中找不到扩展,我可能需要做的是创建 post 消息,否则使用补丁更新它。

我确实发现它在某些情况下有效但在其他情况下无效,这非常奇怪。令我印象深刻的是,它要么每次都有效,要么根本无效——不会有一些奇怪的随机可能性发生。

更新:我刚刚尝试在图形资源管理器中执行此操作,但我现在似乎根本无法将扩展添加到草稿中。