ホームページ > バックエンド開発 > PHPチュートリアル > yii開発、Facebook APIインターネットログイン、プロセスを教えてください

yii開発、Facebook APIインターネットログイン、プロセスを教えてください

WBOY
リリース: 2016-06-13 12:05:13
オリジナル
898 人が閲覧しました

yii 開発、Facebook API インターネット ログイン、プロセスを教えてください
yii 開発、Facebook API インターネット ログイン、具体的なプロセスを教えてください。
------解決策--------
Facebook セッション取得 SDK で実行できます。する必要はありません。自分で書いてください。

sdk には次の 3 つのファイルが含まれている必要があります
base_facebook.php
facebook.php
fb_ca_chain_bundle.crt

<br /><?php<br />include "facebook.php";<br />$oFacebook = new Facebook(array(<br />				'appId'			=>	'xxx',<br />				'secret'		=>	'xxx',<br />				'cookie'		=>	true,<br />				'fileUpload'	=>	true<br />			));<br /><br />$user = $oFacebook->getUser();<br />if($user){<br />	try{<br />		$user_profile = $oFacebook->api('/'.$user);	//判斷是否獲取到用戶信息<br />	} catch (FacebookApiException $e){<br />		$user = null;<br />	}<br />	if($user){<br />		return $user;	//返回用戶id<br />	}<br />}else{<br />	$loginUrl = $oFacebook->getLoginUrl(array(<br />							'scope'			=>	'xxxx', // 这里填权限,要获取的东西 例如 publish_stream,user_photos,email,offline_access,user_birthday,user_notes<br />							'redirect_uri'	=>	'xxx'   // 这里填在facebook login后要回跳的地址<br />						));<br />	return $loginUrl;<br />}<br />?><br />
ログイン後にコピー


$loginUrl を取得した後, このアドレスにジャンプします
Facebook がログインに成功すると、redirect_uri アドレスに戻り、パラメータが戻ります

redirect_uri php は次のように記述できます
<br /><?php<br />  $userid = $oFacebook->getUser();<br /><br />  $facebook_accesstoken = $facebook->getAccessToken();<br />  echo $facebook_accesstoken.'<br>';<br /><br />	try{<br />		$param = array(<br />			'method'		=>	'fql.query',<br />			'query'			=>	"SELECT 'uid,name,pic,pic_square,email,sex,birthday_date' FROM user WHERE uid='".$userid."'",<br />			'access_token'	=>	$facebook_accesstoken<br />		);<br />		$result = oFacebook->api($param);<br />	} catch(FacebookApiException $e){<br />		return array();<br />	}<br /><br />	if($result){<br />		$user_profile = array();<br />		foreach($result[0] as $key=>$val){<br />			$user_profile[$key] = $val;<br />		}<br />		return $user_profile;<br />	}else{<br />		return array();<br />	}		<br />	print_r($result);<br />?><br />
ログイン後にコピー


残りは自分のサーバーでの操作です。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート