流れ
1 /defaults/kakiko/ にアクセスしてログイン画面へ飛ばす
2 facebook へ飛び認証させる
3 完了後 /defaults/callback/ でデータを取得
参考
http://d.hatena.ne.jp/azuki_mihomiho/20110705/1309880953
http://1000torque.com/2012/01/09/822/
http://socialmediaexperience.jp/2638
//レンタルサーバーでこの二行がないと CurlException エラーが出る
ではまったね。
<?
/*
facebook OAuth
*/
App::import('Vendor', 'facebooksdk'.DS.'facebook');
class DefaultsController extends AppController{
function beforeFilter()
{
//レンタルサーバーでこの二行がないと CurlException エラーが出る
Facebook::$CURL_OPTS[CURLOPT_SSL_VERIFYPEER] = false;
Facebook::$CURL_OPTS[CURLOPT_SSL_VERIFYHOST] = 2;
$this->facebookObj = new Facebook(
array(
'appId' => "***6691667420467",//フェイスブック上で取得したキー
'secret' => "5***948755cd48a76c6bae1803c890c",//フェイスブック上で取得したキー
'cookie' => true,
)
);
parent::beforeFilter();
}
//ログアウト
function logout()
{
$this->Cookie->destroy();
$this->Session->destroy();
$this->redirect('/');
}
/*
データ書き込み画面
*/
function kakiko()
{
//フェイスブックのログイン画面へと繊維後、再度、本アプリへリダイレクトする際のURL
$callBackUrl = "http://www.2tixxxxxer.biz/defaults/callback/";
//OAuthの認証ページへのURLの取得
$url = $this->facebookObj->getLoginUrl(
array("redirect_uri" => $callBackUrl,
'scope' => 'email,publish_stream,offline_access',
'canvas' => 1,
'fbconnect' => 0
)
);
//認証ページへリダイレクト
$this->redirect($url);
}
function callback()
{
$this->useFriend = $this->facebookObj->api("/me");
$this->uid = $this->facebookObj->getUser();
pr($this->useFriend);
//$this->TwitterConsumer->callback();
$this->autoRender = false;
}
}
?>
こんな感じ。



