JavaScript YouTube视频插入错误:请求不包含视频内容

时间:2019-11-13 13:34:54

标签: javascript youtube youtube-data-api youtube-javascript-api

我正在尝试使用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实现。如果可能的话,不确定是否还应该发送文件内容。请与我分享有关此问题的任何参考,或让我知道如何正确完成。

谢谢。

0 个答案:

没有答案