【问题标题】:Access files in shared Google Drive folder without authentication, JavaScript无需身份验证、JavaScript 即可访问共享 Google Drive 文件夹中的文件
【发布时间】:2020-05-02 04:23:05
【问题描述】:

有没有什么方法可以通过js访问Google云端硬盘公共共享文件夹中所有文件的直接下载链接而无需身份验证?没有用户可以直接访问客户端计算机,因此无法进行用户身份验证。

例如,我有一个文件夹 ID 或任何名称。该文件夹是共享的而不是私有的。我使用 javascript 中的 id 来调用 api 并获取一个包含所有文件(甚至是共享文件)的对象,在该对象的某处以及元数据有一个直接下载链接。

我不想让你为我编码。我只是要求参考。

【问题讨论】:

  • 使用 JavaScript,您是在运行服务器(使用 node.js)还是在 localhost 或 file:// 或 Google App Script 上托管的本地网页?你必须更清楚你的意思。
  • 抱歉,我更喜欢在本地工作的解决方案。
  • 不幸的是,每次调用 API 都需要 OAuth2 授权。
  • 好的,我需要这个功能。你知道它是否可以与任何其他云服务一起使用?喜欢 Dropbox?
  • 你想做什么?您是否尝试托管文件?

标签: javascript google-drive-api drive


【解决方案1】:

首先在 Google Cloud Platform 中创建项目并启用 Google Drive API。 从那里您将获得您的 API 密钥。

节点 JS 代码:

const { google } = require('googleapis')
const drive = google.drive({ version: "v3", auth: Your-API-Key })
let fconf = {};
fconf.maxResults = 10;
fconf.orderBy = "createdTime";
fconf.q = `'${folderId}' in parents`;
drive.files.list(fconf, function (error, response) {
    if (error) {
        console.log(error)
    } else {
        response.data.files.map(file => {
            let fileUrl = 'https://drive.google.com/u/0/uc?id=' + file.id
               console.log('fileUrl ', fileUrl )
        })
    }
});

【讨论】:

    猜你喜欢
    • 2021-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-16
    • 2022-07-31
    相关资源
    最近更新 更多