Google API OAuth アクセスキーを取得

2014年10月12日更新 view: 7 view

googleのライブラリを使うのが一番良い。

ライブラリダウンロード

http://www.matomater.com/411/

以下はcakephpでのサンプルコード。 app::importした時にうまく読み込めないのでファイル名を小文字に変更した。

また、今回は adsense の情報を取得する。

早速コード

・defaults_controller.php / test アクション

function test()
{
App::import('Vendor','google_client','google-api-php-client/src/Google_Client');
App::import('Vendor','googleadsenseservice','google-api-php-client/src/contrib/googleadsenseservice');

$client = new Google_Client();

$client->setClientId('1026342q74138856.apps.googleusercontent.com');
$client->setClientSecret('WlRe7zwULIrh6WR0t3777O2rYVc');
$client->setRedirectUri('http://www.matomater.com/defaults/test/');
$client->setDeveloperKey('AIzaSyB1MmSrfgaxTUciuTasw3vaJx7TwrsbEAxo0bM');

if (isset($_GET['code'])) {
   $client->authenticate();
   $client->setAccessToken($client->getAccessToken());
  
   pr($client->getAccessToken());
   exit;
} else {
  $authUrl = $client->createAuthUrl();
  print "<a href='$authUrl'>ログインしてね</a>";
}

$this->autoRender = false;
}

流れ

  • /defaults/test/ にアクセス
  • 認証されていなければ google の認証画面へ。
  • 認証後、accesstoken の内容を表示

認証した後にページをリロードするとtokenが無効になる。 今回はSessionに保存せず、 token だけ取得するのでリロードしないで下さい。

スポンサードリンク

google adsense api を叩いてみよう

サイト運営者 ID を取得

この pub から始まるIDが後で必要になります。 $service->accounts->get('pub-fwea86475974845fra41914706');  

google のアカウント情報を取得

setaccess token に 先ほど取得した accesstoken を {} ごと突っ込む。

function test()
{
App::import('Vendor','google_client','google-api-php-client/src/Google_Client');
App::import('Vendor','googleadsenseservice','google-api-php-client/src/contrib/googleadsenseservice');

$client = new Google_Client();

$client->setClientId('102675a4ef4aw3fra856.apps.googleusercontent.com');
$client->setClientSecret('WlRe7fafezwULIrfawfah6WR0t3O2rYVc');
$client->setRedirectUri('http://www.matomater.com/defaults/test/');
$client->setDeveloperKey('AIzaSyB1MmSxTUcgffriuTasfewfea3vaJx7TwrsfeawefawbEAxo0bM');


$service = new Google_AdsenseService($client);
$client->setAccessToken('{"access_token":"ya29.AHESafea6ZQczj4CYchRwJMmCTQfeawCEeHytEBCgq7XajvGCUkpVmA","token_type":"Bearer","expires_in":3600,"refresh_token":"1\/6qr36V45809lF48D38BpBJHDUVE4Em411XqLl0YmTc4RQN40","created":1355645706}');
$res = $service->accounts->get('pub-8647597475fra41914706');//adwords 右上のキー
pr($res);

$this->autoRender = false;
}

結果

すると以下の結果が・・・

Array
(
    [kind] => adsense#account
    [id] => pub-864759787417541914706
    [name] => pub-864759751541914706
)

以上です。 お疲れサマでしたぁ♪

スポンサードリンク

関連記事

関連カテゴリ

コロ助

web関連の記事や制作系の記事をどんどんまとめていきます。 宜しくお願いします!

ピックアップ

パソコン・ソフトウェア ランキング

12月14日 ( 金 ) にアクセスが多かった記事はこちら!