1

我需要为要插入的 GDrive 文件设置权限。与其在作为单独的调用插入后更改权限,不如在插入时正确设置权限。我需要一个链接以允许其他人下载,但不能编辑。

它插入正常,但不允许任何有链接的人访问......嗯

我已经完成了我的 google 作业,并且在以下位置看到了 SO quezz 和 ans:通过 Google Drive API 将文件共享级别设置为“任何有链接的人”, 但在一个灵活的调用中仍然没有运气

我不敢相信我需要一个单独的service.permissions().insert......所以,任何人都可以看到我错过了什么/指向正确的方向吗?

这是我的代码的相关片段:

def upToGDrive (readPath, title, filename, parent_id = None):
    os.chdir(readPath) #change directory to find right file
    from apiclient.http import MediaFileUpload
    mime_type = 'application/octet-stream'
    description = 'yeah baby!'
    media_body = MediaFileUpload(filename, mimetype=mime_type, resumable=True)
    body = {
        'title': title,
        'description': description,
        'mimeType': mime_type,
        'value': 'none',
        'type': 'anyone',
        'role': 'reader',
        'withLink': 'true'
        }
    # Set the parent folder, if necessary
    if parent_id:
        body['parents'] = [{'id': parent_id}]
    try:
        file = drive_service.files().insert(body=body,media_body=media_body).execute()
        return
4

1 回答 1

1

文件和权限资源是解耦的,你需要发出 2 次请求来共享一个文件实体。

于 2013-06-09T15:35:02.977 回答