Dropbox API V2 list_file_members / batch空结果

时间:2016-10-06 23:01:33

标签: dropbox dropbox-api

我目前正在尝试使用Dropbox list_file_members API端点,因为在我看来它是唯一可以找出谁拥有文件的地方(  请参阅文档页面中的示例结果)

{
    "users": [
        {
            "access_type": {
                ".tag": "owner"
            },
            "user": {
                "account_id": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc",
                "same_team": true,
                "team_member_id": "dbmid:abcd1234"
            },
            "permissions": [],
            "is_inherited": false
        }
    ],
    "groups":[...]
    ...
}

但是,当我在一个文件上调用API时,我得到了以下内容

{
  "users": [],
  "groups": [
    {
      "access_type": {
        ".tag": "editor"
      },
      "permissions": [],
      "is_inherited": true,
      "group": {
        "group_name": "Everyone at TEAM_NAME_HERE",
        "group_id": "g:GROUP_ID_HERE",
        "member_count": 6,
        "group_management_type": {
          ".tag": "company_managed"
        },
        "group_type": {
          ".tag": "team"
        },
        "is_owner": false,
        "same_team": true
      }
    }
  ],
  "invitees": []
}

此结果不包含所有者信息,因此我假设这是因为每个人都具有相同的访问级别?

当我尝试使用sharing_list_file_members / batch端点批量调用文件时问题恶化,我得到以下结果

[
  {
    "file": "id:THIS_IS_MY_FILE_ID",
    "result": {
      ".tag": "result",
      "members": {
        "users": [],
        "groups": [],
        "invitees": []
      },
      "member_count": 0
    }
  }
]

显然这甚至没那么有用,当我通过我自己的PHP访问API时,以及API浏览器都是一样的,任何人都可以告诉我哪里出错了以及为什么我会这样做批量完成后,用户甚至组都没有得到结果?

1 个答案:

答案 0 :(得分:0)

/2/sharing/list_file_members端点记录为:

  

用于获取被邀请加入文件的成员,包括继承和未加入的成员。

/2/sharing/list_file_members/batch端点记录为:

  

一次获取多个文件的成员。此路由的参数更受限制,并且每个文件的查询结果大小限制更严格。要更多地自定义结果,请使用单个文件端点。   结果中不包含继承的用户,并且不会为此端点返回权限。

听起来您示例的文件位于团队文件夹中,因此为非批处理示例列出的组是团队组,即继承的组。该文档表明在使用批处理终端时不期望该组。