我正在使用Graph API创建OneDrive文件夹的订阅,即使文件夹(甚至驱动器本身)的内容没有变化,我也会连续(每半秒)收到更改通知 . (显然我希望只有在文件夹内容发生变化时我才会收到通知) .

我发布以下JSON来创建订阅: -

{
  "clientState": "GraphAPITest1 2018/05/01 11:31:26",
  "notificationUrl": "https://123e7ff5.ngrok.io/notification/listen",
  "resource": "/drives/b!X5kF-EHEkECCcjyJ3Fh1CTQI-5nOBktJv57zZdpp13CPQb_8FIV-RIPt-7fnzyxP/root",
  "expirationDateTime": "2018-05-02T11:31:26.0881202+01:00",
  "changeType": "updated"
}

我的服务收到的通知是: -

{
    "value": [
        {
            "subscriptionId": "2467af01-a616-4493-8947-220146c4828a",
            "clientState": "GraphAPITest1 2018/05/01 11:23:13",
            "resource": "/drives/b!X5kF-EHEkECCcjyJ3Fh1CTQI-5nOBktJv57zZdpp13CPQb_8FIV-RIPt-7fnzyxP/root",
            "resourceData": null,
            "changeType": "updated",
            "subscriptionExpirationDateTime": "2018-05-02T10:23:13.3640899+00:00"
        }
    ]
}

我在自己的代码中以及在Microsoft的示例应用程序(https://github.com/OneDrive/onedrive-webhooks-aspnet)中获得相同的行为 . 我的代码使用仅限应用程序的身份验证令牌,但Microsoft示例强制用户身份验证 - 两者都遭受相同的行为 .

知道我需要做什么只在文件夹的内容实际发生变化时才收到通知吗?

巴里