Google Drive API:使用不那么可怕的范围编辑共享文件

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

我需要编辑使用我的nodeJs webapp 创建的、由我拥有或与我共享的Google Drive 文件。

使用“https://www.googleapis.com/auth/drive/file”范围我可以编辑我拥有的文件。

要编辑与我共享的文件,我必须使用“https://www.googleapis.com/auth/drive”范围。但是这个范围在登录时向用户发送了一条非常可怕的消息:“这将允许 xxx:查看、编辑或删除所有Google Drive 文件”(粗体是我的)。

我不想删除您的文件并且我不想编辑您的所有文件:有没有办法以不那么可怕的范围实现我的目标?

google-drive-api
2个回答
1
投票

如果您想编辑文件,

drive
范围的唯一替代方案是
drive.file
,它可以访问您使用应用程序打开或创建的文件ref)。

由于这不适合您,恐怕您将不得不使用可怕范围。

功能要求:

考虑到您的情况,我认为您可能对此功能请求感兴趣,涉及限制对特定文件夹的访问的可能性。我认为如果它得到实施,这对您来说非常有用。我建议您为该问题加注星标,既可以跟踪其发展情况,也可以帮助确定其实施的优先顺序:

相关:


0
投票

您现在只能编辑“https://www.googleapis.com/auth/drive/file”范围内的共享文件。你只需要通过

supportsAllDrives: true

到api函数。例如,以下是我仅使用“https://www.googleapis.com/auth/drive/file”范围的 api 调用,以将文件与“folder_id”表示的共享文件夹同步:

const service = google.drive({ version: "v3", auth: oauth2Client })
const folder = await service.files.create({
  requestBody: {
    name: "xxxx",
    parents: [folder_id],

    mimeType: "application/vnd.google-apps.folder"
  },
  fields: "id,name",
  supportsAllDrives: true
})
© www.soinside.com 2019 - 2024. All rights reserved.