我正在按照使用Node.Js(here is the link)上传Youtube视频的教程进行操作,效果很好。唯一的问题是,在完成脚本后,我无法找到我上传的视频。这是我正在使用的脚本(上传的视频名为 video.mp4 ):
const Youtube = require("youtube-api");
const fs = require("fs");
const readJson = require('r-json');
const Lien = require("lien");
const Logger = require("bug-killer");
const opn = require("opn");
const prettyBytes = require("pretty-bytes");
const CREDENTIALS = readJson(`${__dirname}/credentials.json`);
// initialize Lien server
let server = new Lien({
host: "localhost",
port: 3000
});
let oauth = Youtube.authenticate({
type: "oauth",
client_id: CREDENTIALS.web.client_id,
client_secret: CREDENTIALS.web.client_secret,
redirect_url: CREDENTIALS.web.redirect_uris[0]
});
opn(oauth.generateAuthUrl({
access_type: "offline",
scope: ["https://www.googleapis.com/auth/youtube.upload"]
}));
server.addPage("/response", lien => {
Logger.log("Trying to get the token using the following code: " + lien.query.code);
oauth.getToken(lien.query.code, (err, tokens) =>{
if (err){
lien.lien(err, 400);
return Logger.log(err);
}
Logger.log("Got the tokens");
oauth.setCredentials(tokens);
lien.end("The video is being uploaded.");
var req = Youtube.videos.insert({
resource:{
snippet:{
title: "Testing Youtube API",
description: "testing the youtubes"
},
status: {privacyStatus: "private"}
},
part: "snippet, status",
media: {
body: fs.createReadStream("video.mp4")
}
},(err, data) => {
console.log("Done." + data);
process.exit();
});
setInterval(function(){
Logger.log(`${prettyBytes(req.req.connection._bytesDispatched)} bytes uploaded.`);
}, 250);
});
});
我通过console.log获得正确的输出,告诉我视频已上传:
info Trying to get the token using the following code: XXXXXXXXXX
info Got the tokens
info 263 kB bytes uploaded.
info 384 kB bytes uploaded.
info 384 kB bytes uploaded.
info 384 kB bytes uploaded.
Done.
答案 0 :(得分:3)
希望这可以帮助下一代使用Node.js构建Youtube Data API连接的开发人员节省几个小时...假设您也是像我这样的Youtube新手。
这让我很沮丧,但最终有些视频开始出现在我的YouTube频道上。我使用的视频是我从this website下载的示例视频,这是问题的一部分。我每次上传视频时都会因违反服务条款而被立即删除,可能是出于版权或凭据原因。
但是,您可以点击视频管理器查看实际实施是否有效。视频本身从未进入我上传的视频列表,但它们确实显示在视频管理器视图中:。
This post也描述了类似的问题。
所以一些经验法则: (1)根据详细信息找到您自己的视频和标签,以避免上传被删除以获取服务条款 (2)检查您的视频管理器,以获得更详细的视频上传视图,只需"上传"标签
修改:文章的作者也回复了我的评论,并提出了一个很好的建议来查看我的Creator Studio。