Google API PHP客户端YouTube"嵌入式"设置不起作用

时间:2015-04-08 13:54:36

标签: google-api-php-client youtube-data-api

我于2015年4月7日下载并安装了Google API PHP客户端测试版。我可以使用它将视频上传到YouTube,但在YouTube的视频编辑屏幕中,&# 34;允许嵌入"无论我如何尝试通过API设置复选框,都会始终选中复选框。这是我正在谈论的复选框:

https://assets.libsyn.com/secure/show/37607/youtube-embeddable2.jpg

这是我上传文件前的代码:

// set up client
$client = new Google_Client();
$client->setClientId(...);
$client->setClientSecret(...);
$client->refreshToken(...);

$youtube = new Google_Service_YouTube($client);

// create snippet
$snippet = new Google_Service_YouTube_VideoSnippet();
$snippet->setTitle(...);
$snippet->setDescription(...);

// create status
$status = new Google_Service_YouTube_VideoStatus();
$status->setPrivacyStatus("public");
$status->setEmbeddable(false);

// Create a YouTube video with snippet and status
$video = new Google_Service_YouTube_Video();
$video->setSnippet($snippet);
$video->setStatus($status);

$client->setDefer(true);

$insertRequest = $youtube->videos->insert("status,snippet", $video);

// file chunking and upload here...

Google_Service_YouTube_VideoStatus对象中的privacyStatus选项有效。如果我将其设置为" private",视频会上传为私有。因此,问题不在于将状态附加到视频。它只是可嵌入的选项,似乎无法运作。

我在这里有三种可能性:

  1. 我做错了什么
  2. 我误解了" embeddable"设置
  3. 客户端库中存在错误
  4. 有人可以告诉我与谁打交道吗?

    谢谢!

1 个答案:

答案 0 :(得分:1)

客户端库将status.embeddable传递给API。 YouTube v3 API是这里的罪魁祸首。我终于在2013年找到了关于这个的票:

https://code.google.com/p/gdata-issues/issues/detail?id=4861