允许用户使用 youtube API v3 将视频上传到我的频道

use*_*074 5 php youtube google-api youtube-api

使用 Google API v3 php 库。我希望用户在我的 youtube 频道上上传视频。但是 oAuth 需要用户 google 登录并将视频上传到登录用户的 youtube 频道。

在使用 V3 api 之前,我们使用 V2 上传视频,效果很好。

global $youtube_api_key, $youtube_username, $youtube_password;

if(is_file('../uploader/ClassYouTubeAPI.php')){ include_once ('../uploader/ClassYouTubeAPI.php'); }
else{ include_once('ClassYouTubeAPI.php'); }

$obj = new ClassYouTubeAPI($youtube_api_key);
$result = $obj->clientLoginAuth($youtube_username, $youtube_password);
$result = $obj->uploadVideo($uploaded_file_name, $file_path, $title, $description, $privacy);
var_dump($result);
if (is_array($result) and count($result) and ! isset($result["is_error"])) {
    $youtube_file = str_replace($uploaded_file_name, $result["videoId"] . '.youtube', $file_path);
    $resource = fopen($youtube_file, 'w');
    fwrite($resource, "");


    fclose($resource);

    @unlink($file_path);

    return $result["videoId"];
} else {
    @unlink($file_path);
    return false;
}
Run Code Online (Sandbox Code Playgroud)

有没有办法在没有“用户 Google 帐户”的情况下使用 V3 并将视频上传到我的频道?

小智 2

只有一种解决方案,如下所述。

简而言之,您必须在Google 控制台中创建一个“网络应用程序”帐户(而不是“服务帐户”) ,并代表您的 YouTube 帐户从您的服务器进行身份验证。