如何按具有写入权限的域过滤 Drive API 列表结果

问题描述 投票:0回答:1

我正在尝试使用服务帐户从驱动器 API 获取文件列表,该列表允许特定域对其进行编辑。我让它适用于特定电子邮件,没有问题,但我还需要能够根据具有写入权限的域列出它们。

当按特定电子邮件进行过滤时,我的查询按我的预期工作:

const query = `'some-id' in parents and '[email protected]' in writers`
const response = await DRIVE_API.files.list({
  q: query,
  fields: "files(id, name, mimeType, description)",
});
console.log("response.data:", response.data)

当我将查询更改为:

const query = "'some-id' in parents and 'example.com' in writers and...
文件列表为空。

我已经通过检查权限验证它应该可以工作。多个文件的权限如下所示:

permissions: [
    {
      id: '1234...',
      displayName: 'test',
      type: 'user',
      kind: 'drive#permission',
      emailAddress: '[email protected]',
      role: 'writer'
    },
    {
      id: '1234...',
      displayName: 'some name...',
      type: 'domain',
      kind: 'drive#permission',
      role: 'writer',
      domain: 'example.com'
    },
    ...
javascript node.js google-api google-drive-api
1个回答
0
投票

您可以使用查询进行搜索:

visibility = 'domainCanFind' OR visibility = 'domainWithLink'

并在权限中过滤你想要的域名。

© www.soinside.com 2019 - 2024. All rights reserved.