【发布时间】:2015-08-04 10:23:53
【问题描述】:
我尝试检查 youtube 视频是否在线、不是私人视频、未删除等。我需要它用于视频博客。
我找到并尝试过的所有代码都不起作用。我希望你能帮助我。 我已经注册了新的 API v3。
我的代码如下,但我总是得到“Bad Request 400”
$theURL = "https://www.googleapis.com/youtube/v3/videos?part=status&id=". get_post_meta($post->ID,"wpzoom_post_embed_code", true) ."&key=my_api_key";
// echo $theURL;
//$theURL = "http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=". get_post_meta($post->ID,"wpzoom_post_embed_code", true) ."&format=json";
$headers = get_headers($theURL);
print_r ($headers);
if (substr($headers[0], 9, 3) !== "404") {
echo "online";
} else {
echo "offline";
}
【问题讨论】:
-
我已经设法让您的代码正常工作。打印出来的 $theUrl 字符串是什么样的? 400 错误请求通常意味着参数/令牌/过滤器有问题,请参阅此处developers.google.com/youtube/v3/docs/errors
-
$theURL 的输出:googleapis.com/youtube/v3/… - 我不知道如何使用正确的参数
-
这是打印请求:( [0] => HTTP/1.0 400 Bad Request [1] => Content-Type: text/html; charset=UTF-8 [2] => Content -长度:1419 [3] => 日期:2015 年 8 月 4 日星期二 11:27:13 GMT [4] => 服务器:GFE/2.0)
-
有时我会收到 403 代码
-
再一次,您提供的 URL 对我有用。您正在用生成的 API 密钥替换 URL 中的“api_key”,不是吗? developers.google.com/youtube/v3/getting-started
标签: php youtube-api