1

我正在使用 OAuth2 服务器到服务器。

我收到这条消息:

HTTP 状态:403

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "forbidden",
    "message": "Forbidden"
   }
  ],
  "code": 403,
  "message": "Forbidden"
 }
}

我启用了所有的 Youtube API。

这是我的代码:

    $service_token_arr = json_decode($_SESSION['service_token'], true);
    $access_token = $service_token_arr['access_token'];

    $url = 'https://www.googleapis.com/youtube/analytics/v1/reports';
    $params = '?end-date=2015-09-10&ids=channel%3D%3D' . YOUTUBE_CHANNEL_ID . '&metrics=views&start-date=2015-05-01&dimensions=day&sort=day';

    $ch = curl_init( $url . $params );

    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $access_token));
    //curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 20);
    //curl_setopt($ch, CURLOPT_TIMEOUT, 40);

    //execute post
    $result = curl_exec( $ch );
    $http_code = curl_getinfo( $ch, CURLINFO_HTTP_CODE );

    if($http_code != '200') {
        //error_log( get_bloginfo('name') . ' - Facebook Page - HTTP ' . $http_code . ' Error.' );
        echo '[Error:' . $http_code . ']';
    }

这是我正在使用的范围:

$scopes = 'https://www.googleapis.com/auth/yt-analytics.readonly';

我正在使用 PHP CURL,因为 Google PHP SDK 不支持 Youtube Analytics。

我忘了还指出在一个帐户下我有多个 Youtube 帐户。我不确定如何使它与 API 一起使用。但我怀疑这与我的问题有关。

有什么我想念的吗?

我只是想每天获得我的视频观看次数。

4

0 回答 0