0

嗨,我是网页设计的新手。我正在创建一个代码,用户可以将视频从他的 PC 上传到 YouTube。我正在使用 Google 视频上传小部件。但它只给了我一个从网络摄像头录制视频的选项。我没有从我的文档 (PC) 中浏览和选择视频的选项。请问我能得到一些帮助吗?或者有没有其他方法可以将视频上传到 YouTube 并获取其 url 或 id?我需要它,以便作为管理员,我可以将其保存在数据库中以便以后查看视频。这是我的代码:

<%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html>
<html>
  <body>  
    <div id="widget"></div>
    <div id="player"></div>
    <script>   
      var tag = document.createElement('script');
      tag.src = "//www.youtube.com/iframe_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);    
      var widget;
      var player;
      function onYouTubeIframeAPIReady() {
        widget = new YT.UploadWidget('widget', {
          width: 500,
          events: {
            'onUploadSuccess': onUploadSuccess,
            'onProcessingComplete': onProcessingComplete
          }
        });
      }      
      function onUploadSuccess(event) {
        alert('Video ID ' + event.data.videoId + ' was uploaded and is currently being processed.');
      }
      function onProcessingComplete(event) {
        player = new YT.Player('player', {
          height: 390,
          width: 640,
          videoId: event.data.videoId,
          events: {}
        });
      }
    </script>
  </body>
</html>

我的输出是:

在此处输入图像描述

4

2 回答 2

0

上传小部件不再可以满足您的要求,因为他们已删除该功能。我已经确认,即使您将“webcamOnly: false”设置为选项,显示的上传按钮实际上也不会执行任何操作。

查看他们的变更日志:https ://developers.google.com/youtube/youtube_upload_widget#Revision_History

“webcamOnly 属性已从您可以在上传小部件的构造函数中指定的小部件选项列表中删除。以前,此属性被记录为具有默认值 false,这意味着小部件还将显示一个按钮用于上传现有视频文件。但是,当前不支持上传现有文件的选项,因此小部件始终只显示录制和上传网络摄像头视频的选项。”

于 2013-10-26T20:29:51.870 回答
0

尝试改变这个:

widget = new YT.UploadWidget('widget', {
          width: 500,
          events: {
            'onUploadSuccess': onUploadSuccess,
            'onProcessingComplete': onProcessingComplete
          }
        });

对此:

widget = new YT.UploadWidget('widget', {
      width: 500,
      webcamOnly: false,
      events: {
        'onUploadSuccess': onUploadSuccess,
        'onProcessingComplete': onProcessingComplete
      }
    });
于 2013-05-05T23:44:08.327 回答