驱动Api - nodejs中的大文件流
你好,我去从谷歌驱动器流大文件到我的网站,但我有问题…
app.get("/blog.mkv", (req, ress) => {
const p38290token = new google.auth.OAuth2(CLIENT_ID, CLIENT_SECRET, REDIRECT_URI);
p38290token.setCredentials({ refresh_token: token.acc });
const p38290Id = google.drive({
version: "v3",
auth: p38290token,
});
try {
p38290Id.files.get({
fileId: "1OU3BXc4FmyRD0rCW9S4XFfVxIl48vy3v",
alt: "media",
// arraybuffer , stream , blob
}, { responseType: "stream" },
(err, res) => {
if (err) {
console.log(err.message)
if (err.message === "invalid_grant") {
// fatchToken(exportFile)
}
} else {
res.data
.on("end", () => {
console.log("Done");
})
.on("error", err => {
console.log("Error", err);
})
.pipe(ress);
}
}
)
} catch (error) {
}
})
当用户访问/blog时。mkv视频是开始流,但是用户不能跳过它(不能向前或向后),我该怎么办?
检查这个repo从Google Drive流媒体和下载文件。
Google-drive-video-streaming-nodejs
这是一个小脚本在nodejs,允许您观看视频存储在您的谷歌驱动器直接在您的视频播放器。
您只需要通过输入以下命令来安装所有依赖项:
npm install
使用
输入以下命令启动脚本。
node ./app.js
现在服务器已经启动,你可以开始观看视频或下载了。
流
将此链接粘贴到播放器中以开始播放视频。
http://127.0.0.1:9001
下载
要下载它,请在新的浏览器选项卡中输入此URL。
http://127.0.0.1:9001/download
如果您愿意,您可以指定参数p
,它以百分比表示将跳过视频的哪一部分。例如,要从中间点开始下载视频,您应该使用以下链接:
<>以前http://127.0.0.1:9001下载吗?p=50您甚至可以使用参数c
来指示必须从哪个块开始下载。要停止下载进程,请使用以下URL:
http://127.0.0.1:9001 download_stop