gpt4 book ai didi

go - 在 Go 中创建/更新 google drive 权限/[使用 api 创建电子表格但无权访问它]

转载 作者:行者123 更新时间:2023-12-01 20:21:56 25 4
gpt4 key购买 nike

我正在尝试使用带有以下代码的 google drive api 创建电子表格,但我无权访问它。

[更新:文件似乎不在我在这里指定的驱动器中,有人知道为什么会这样吗?]

[更新:在字段中添加了 parent ,但出现404错误,说找不到文件,如果有人知道原因,请提前致谢。]

func (dr *driveService) CreateFile(driveId string, fileName string, parents []string) (*drive.File, error) {
file := &drive.File{
DriveId: driveId,
Name: fileName,
MimeType: mimeTypeSpreadsheet,
Parents: parents,

}
file, err := dr.googleDriveService.Files.Create(file).Do()
return file, err
}

所以我尝试使用这段代码创建/更新权限,但是出现了这个错误Error 403: The resource body includes fields which are not directly writable., fieldNotWritable

func (dr *driveService) CreatePermission(fileId string, permissionType string, permissionRole string) error {
permissionToBeCreated := &drive.Permission{
Type: permissionType,
Role: permissionRole,
}
filePermission, err := dr.googleDriveService.Permissions.Create(fileId, permissionToBeCreated).Do()
if err != nil {
fmt.Printf("An error occurred creating permission for file: %v\n", err)
return err
}

_, err = dr.googleDriveService.Permissions.Update(fileId, filePermission.Id,filePermission).Do()
if err != nil {
fmt.Printf("An error occurred: %v\n", err)
return err
}
return nil
}

于是尝试去掉第二个函数中的update部分,但是文件的权限是nil

那么,有人知道如何解决这个问题吗?或者一般来说,我如何创建一个电子表格,每个人都有链接可以访问它?

谢谢!

最佳答案

通过在创建文件时将 supportAllDrives 设置为 true 解决了这个问题。然而,这应该已经被弃用了,但在我的版本中没有。

编辑:

看起来 supportsAllDrives 不再被弃用,至少现在是这样。在官方文档中找不到弃用说明,所以似乎仍然支持。

同时,查看 this article ,似乎对共享云端硬盘的更改已被推迟:

Editor's note: Due to current events the Google team has made the decision to avoid causing additional disruption during this uncertain time. As a result, we're postponing the proposed changes regarding the opt-in mechanism for shared drives indefinitely. Shared drives and files within a shared drive will only be returned when requests set the relevant opt-in parameters.

关于go - 在 Go 中创建/更新 google drive 权限/[使用 api 创建电子表格但无权访问它],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63935583/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com