使用本网站上的另一个答案,我能够找到这个 curl 脚本:
#!/bin/bash
fileid="0Bz-w5tutuZIYY3h5YlMzTjhnbGM"
filename="MyFile.tar.gz"
curl -c ./cookie -s -L "https://drive.google.com/uc?export=download&id=${fileid}" > /dev/null
curl -Lb ./cookie "https://drive.google.com/uc?export=download&confirm=`awk '/download/ {print $NF}' ./cookie`&id=${fileid}" -o ${filename}
它能够下载大型 Google Drive 文件(显示警告页面)。
此外,我能够给我们pip install gdown命令:
gdown https://drive.google.com/uc?id=0Bz-w5tutuZIYY3h5YlMzTjhnbGM
或pip install youtube-dl图书馆:
youtube-dl https://drive.google.com/uc?id=0Bz-w5tutuZIYY3h5YlMzTjhnbGM`
我什至可以在 NODE.js 中运行 gdown 脚本:
const {spawn} = require("child_process");
var g = spawn("gdown", ["https://drive.google.com/uc?id=0Bz-w5tutuZIYY3h5YlMzTjhnbGM"]);
g.stdout.on('data', (d) => {
console.log(d.toString());
});
g.stderr.on('data', (d) => {
console.log(d.toString());
});
g.on('close', (d) => {
console.log("closed with: " + d.toString());
});
问题:
我希望能够使用 Google Drive 为网站托管大文件,为此我需要能够生成直接下载链接。我在想像向 mynodewebsite/GOOGLE_DRIVE_LINK 发出 GET 请求,甚至向 node.js 服务器发出套接字请求,要求它获取链接,然后等待生成的链接响应。
但是,虽然我可以使用上述方法缓慢下载文件,但我如何简单地返回 / 文件的直接链接?我是否需要将 google drive 文件下载到 node.js 服务器上,等待它完成处理,然后将该文件的路径返回给客户端,然后再将其删除?这会破坏大文件的目的,因为我想使用 Google Drive 作为完整的托管......
那么我怎样才能简单地返回直接的 Google Drive 下载链接而不是下载整个东西?
相关分类