无法为我自己的onedrive“Documents”文件夹添加新订阅

时间:2017-09-18 10:59:55

标签: onedrive

我未能为我的个人驱动器文档文件夹(非商业帐户)添加新的订阅webhook网址。请求响应详细信息如下。

网址 https://graph.microsoft.com/v1.0/subscriptions

尝试1

  Request JSON:
    {
     "notificationUrl": "https://****.rest/OneDrive/newItemWebhook",
     "expirationDateTime": "2017-09-18T11:23:00.000Z",
     "resource": "/me/drive/root/Documents",
     "changeType": "updated",
     "clientState": "client-specific string"
    }
    Response JSON:
    {
      "error": {
      "code": "BadRequest",
      "message": "Unsupported segment type. ODataQuery: 
       users/****@outlook.com/drive/root/Documents",
      "innerError": {
      "request-id": "169755ee-bdf5-460e-8577-6f1e22777207",
      "date": "2017-09-18T10:46:07"
        }
      }
    }

尝试2

Request JSON:
        {
         "notificationUrl": "https://****.rest/OneDrive/newItemWebhook",
         "expirationDateTime": "2017-09-18T11:23:00.000Z",
         "resource": "/me/drive/root:/Documents",
         "changeType": "updated",
         "clientState": "client-specific string"
        }
Response JSON:
        {
          "error": {
          "code": "InvalidRequest",
          "message": "resource '/me/drive/root:/Documents' is not supported.",
          "innerError": {
          "request-id": "403229b0-0554-46c2-82b8-ede69a4ef9a2",
          "date": "2017-09-18T10:50:36"
              }
           }
         }

在这两种情况下,无法添加订阅webhook URL的情况,但我不知道的原因,意味着:

  1.   

    不支持的细分类型。 ODataQuery

  2.   

    资源'/ me / drive / root:/ Documents'不受支持。

  3. 然后如果我想为上面提到的“资源”设置webhook URL,那么我的案例的路径是什么!

1 个答案:

答案 0 :(得分:0)

显然,您不能订阅特定文件夹中的更改,而是订阅驱动器,因此您应订阅/me/drive/root。然后你可以使用driveitem delta api来跟踪变化:https://docs.microsoft.com/en-gb/onedrive/developer/rest-api/api/driveitem_delta或使用你自己的方法(即Documents文件夹中的列表文件)

这是一个有点过时的视频,解释了这个过程:https://channel9.msdn.com/Events/Build/2016/P566