我已设法通过google nodejs API将视频上传到YouTube。但我没有找到一种方法来获取已上传的视频的网址。当我记录我得到的数据时,它似乎是
{ status: 200,
statusText: 'OK',
headers:
{ 'x-guploader-uploadid': 'AEnB2UqicLz-FhD6KLtuvX_sZYeYQWuXoTM4FFusI6yCSGGlIdxKu3-EIneHhG04CYPqum1Uz8ISVmwIlzZqHrBJ2w-wOmbb6t5hEqOUrPnfRxirEd2tHfM',
etag: '"_gJQceDMxJ8gP-8T2HLXUoURK8c/-WggxUHM10yHZDXznWuNSxlnSYU"',
vary: 'Origin, X-Origin',
'x-goog-correlation-id': 'zaYeqX5ngEo',
'content-type': 'application/json; charset=UTF-8',
'cache-control': 'no-cache, no-store, max-age=0, must-revalidate',
pragma: 'no-cache',
expires: 'Mon, 01 Jan 1990 00:00:00 GMT',
date: 'Wed, 21 Feb 2018 15:19:39 GMT',
'content-length': '975',
server: 'UploadServer',
'alt-svc': 'hq=":443"; ma=2592000; quic=51303431; quic=51303339; quic=51303338; quic=51303337; quic=51303335,quic=":443"; ma=2592000; v="41,39,38,37,35"',
connection: 'close' },
config:
{ adapter: [Function: httpAdapter],
transformRequest: { '0': [Function: transformRequest] },
transformResponse: { '0': [Function: transformResponse] },
timeout: 0,
xsrfCookieName: 'XSRF-TOKEN',
无法查看服务器中的完整日志
上传视频的代码是
var yt = google.youtube('v3');
yt.videos.insert({
part: 'status,snippet',
resource: {
snippet: {
title: "title",
description: "description"
},
status: {
privacyStatus: 'public'
}
},
media: {
body: fs.createReadStream(file)
}
}, function(error, data){
console.log(util.inspect(data, false, null));
console.log(error);
if(error){
} else {
}
});
如何获取上传的视频网址?
答案 0 :(得分:0)
这是按预期工作的。 browser compatibility中没有显示视频网址。使用Resource representation时,没有提及成功上传后会提供视频链接。
但是,您使用JSON响应中的视频ID,并将其与https://www.youtube.com/watch?v=
URL连接起来:
https://www.youtube.com/watch?v= + videoID
然后你有视频链接。
答案 1 :(得分:0)
得到了解决方案。在云功能中,视频对象存在于响应的数据键中。视频ID将为response.data.id