Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Youtube api YouTube分析API返回奇怪结果_Youtube Api_Google Analytics Api_Google Api Php Client_Youtube Data Api - Fatal编程技术网

Youtube api YouTube分析API返回奇怪结果

Youtube api YouTube分析API返回奇怪结果,youtube-api,google-analytics-api,google-api-php-client,youtube-data-api,Youtube Api,Google Analytics Api,Google Api Php Client,Youtube Data Api,我很难从YouTubeanAnalytics获取数据。我已经创建了一个客户端和它的身份验证ok我使用相同的客户端实例进行谷歌分析。YouTubeAnalytics是在google开发者控制台中启用的,但是当使用他们提供给开发者的AJAX控制台时,我似乎得到了不同的响应。我的测试是 获取我的通道id通道==我的通道的信息-不返回任何数据 获取实际通道id通道的信息==UC-CF-1aN7rEN8SBQgT9DDag-返回403错误 正在获取我的频道的信息-这将获取与我的频道id不同的id 正在获取

我很难从YouTubeanAnalytics获取数据。我已经创建了一个客户端和它的身份验证ok我使用相同的客户端实例进行谷歌分析。YouTubeAnalytics是在google开发者控制台中启用的,但是当使用他们提供给开发者的AJAX控制台时,我似乎得到了不同的响应。我的测试是

获取我的通道id通道==我的通道的信息-不返回任何数据 获取实际通道id通道的信息==UC-CF-1aN7rEN8SBQgT9DDag-返回403错误 正在获取我的频道的信息-这将获取与我的频道id不同的id 正在获取上述不同通道id的信息-无数据 在youtube上检查此新频道ID显示未找到频道


有人有其他建议吗?似乎它必须与频道的某些权限有关?我只是看不出与我的频道id不同的id与什么有关。

您是否在控制台项目中启用了YouTube Data API V3和YouTube Analytics?是的。我已尝试再次禁用它们以确认它们已启用ok,并且一旦禁用它们,我将获得未配置的403访问权限。不理解此$channels[0]->getId。应为$channels[items][0][id]才能获取id$channels返回Google\u服务\u YouTube\u ChannelListResponse对象。这个类有一些神奇的函数,所以你可以通过像数组一样使用对象直接读取[items]。问题与此无关,我只是在示例中简化了它,以提高可读性。您是该频道的所有者吗?你能用API浏览器检查相同的查询吗?
$analytics = new Google_Service_YouTubeAnalytics($client);

var_dump($analytics->reports->query(
    "channel==MINE",
    '2014-01-01',
    '2014-08-01',
    'views', array(
        'sort' => 'day',
        'dimensions' => 'day'
    )
));
$analytics = new Google_Service_YouTubeAnalytics($client);

var_dump($analytics->reports->query(
    "channel==UC-CF-1aN7rEN8SBQgT9DDag",
    '2014-01-01',
    '2014-08-01',
    'views', array(
        'sort' => 'day',
        'dimensions' => 'day'
    )
));
$service = new Google_Service_YouTube($client);

$channels = $service->channels->listChannels('id,brandingSettings',array(
    'mine' => 'true',
));

var_dump($channels[0]->getId());
var_dump($analytics->reports->query("channel=={$channels[0]->getId()}",...);