【问题标题】:make folder shared google drive api v3?制作文件夹共享 google drive api v3?
【发布时间】:2026-02-03 04:25:01
【问题描述】:

我可以使用此代码创建一个文件夹

var request = gapi.client.request({
       'path': '/drive/v3/files/',
       'method': 'POST',
       'headers': {
           'Content-Type': 'application/json'

           //'Authorization': 'Bearer ' + token             
       },
       'body':{
           "name" : "copy",
           "mimeType" : "application/vnd.google-apps.folder",

       }
   });


   request.execute(function(resp) { 
       console.log(resp); 
       //document.getElementById("info").innerHTML = "Created folder: " + resp.title;
   });

但我无法弄清楚如何将文件夹共享给所有人,我在文档中看到输入类型:任何人,但我无法弄清楚如何在代码中执行此操作,谢谢您的时间

【问题讨论】:

    标签: javascript google-drive-api directory


    【解决方案1】:

    创建使用此 REST 功能的文件或文件夹的权限:

    POST https://www.googleapis.com/drive/v3/files/fileId/permissions
    

    所以你可以这样做:

    var fileId = File Id;
    var request = gapi.client.request({
       'path': '/drive/v3/files/' + fileId + '/permissions',
       'method': 'POST',
       'headers': {
           'Content-Type': 'application/json'
           //'Authorization': 'Bearer ' + token             
       },
       'body':{
            'role': 'reader', // owner, writer, commenter
            'type': 'anyone'
       }
    });
    

    如果成功,它会给你一个 Permissions 资源:

    {
        kind: "drive#permission",
        id: Unique identifier,
        type: string,
        emailAddress: string,
        domain: string,
        role: string,
        allowFileDiscovery: boolean,
        displayName: string,
        photoLink: string
    }
    

    我给你参考链接,但我没有找到任何例子:

    【讨论】:

    • 非常感谢,它说我不能做所有者但我可以做阅读器,如果我做阅读器其他人可以下载文件夹吗?
    • 好吧,TBH 我不知道文件夹的权限如何。您还可以指定是否可以通过 Google 搜索将属性“allowFileDiscovery”设置为 true 找到该文件夹​​或文件