我正在尝试使用gapi.client.youtube.videos.insert
通过JavaScript代码(来自浏览器)将视频上传到YouTube。提出请求后,将会在YouTube上创建一个空的视频帖子(没有名称,描述和视频内容)。提出插入API请求时,我收到The request does not include the video content.
错误消息。
下面是完整的错误消息:
{
"error": {
"errors": [
{
"domain": "youtube.video",
"reason": "mediaBodyRequired",
"message": "The request does not include the video content.",
"locationType": "other",
"location": "body"
}
],
"code": 400,
"message": "The request does not include the video content."
}
}
这是我的示例代码:
gapi.client.youtube.videos
.insert({
part: "id,snippet,status",
notifySubscribers: true,
resource: {
snippet: {
title: "date.toString()",
description: "description.slice(0, 200)",
tags: ["hello"]
},
status: {
privacyStatus: "public"
}
},
media: {
body: fileData
}
})
.then(
function(response) {
console.log("Response", response);
},
function(err) {
console.error("Execute error", err);
}
);
使用以下代码创建 fileData
的地方:
var reader = new FileReader();
reader.onload = function(e) {
fileData = e.target.result;
};
reader.readAsBinaryString(file.files[0]);
因此,我不确定YouTube video insert
是否可以通过JavaScript实现。如果可能的话,不确定是否还应该发送文件内容。请与我分享有关此问题的任何参考,或让我知道如何正确完成。
谢谢。