Php 谷歌REST ful call+;Guzzle:设置授权令牌

Php 谷歌REST ful call+;Guzzle:设置授权令牌,php,curl,authorization,google-analytics-api,guzzle,Php,Curl,Authorization,Google Analytics Api,Guzzle,我是Guzzle的新手,我正试图用它调用GoogleAPI。我试过这样做,但运气不好: 这是我的密码: $client = new Client(); try { $request = $client->get ( 'https://www.googleapis.com/analytics/v3/data/ga' ); /*setting Authorization token*/ $request->addHeader('authorization'

我是Guzzle的新手,我正试图用它调用GoogleAPI。我试过这样做,但运气不好:

这是我的密码:

$client = new Client();   
try {
    $request = $client->get ( 'https://www.googleapis.com/analytics/v3/data/ga' );

    /*setting Authorization token*/
    $request->addHeader('authorization', $accessToken);

    $query = $request->getQuery();
    $query->set('ids', $profileId);
    $query->set('start-date', $startDate);
    $query->set('end-date', $endDate);
    $query->set('metrics', $metrics);

    $response = $request->send();
    $response = $response->json();
    var_dump($response);

} catch (ClientErrorResponseException $e) {
    var_dump($e->getMessage ());                     
}
我总是得到这样的回答:

"Client error response
[status code] 401
[reason phrase] Unauthorized
[url] https://www.googleapis.com/analytics/v3/data/ga?ids=ga%3AXXXXXX&start-date=2014-07-01&end-date=2014-07-01&metrics=ga%3Asessions"
我使用PHP curl尝试了相同的调用,得到了正确的响应,但我希望在这个项目中使用Guzzle

正确的方法是什么
array(CURLOPT\u HTTPHEADER=>array('Authorization:Bearer.$accessToken))
与Guzzle?

您遇到的问题是,对Google Analytics API的请求是作为Get发送的。添加标题用于帖子

$request->addHeader('authorization', $accessToken);
下面将添加accessToken作为请求中Get的一部分

$query->set('oauth_token', $accessToken);

删除addheader行。尝试并添加$query->set('oauth_标记',$accessToken)@DaImTo我已经做出了改变,而且成功了!非常感谢你。如果你介意把它作为一个答案发布。。。谢谢