FacebookAPIで動作するPHPクラスがあります。
class Social {
private $name;
private $context;
private $tocken;
public function check(){
$this->tocken = $this->context->getAccessToken(); // get current tocken
if (isset($_SESSION['fb_tocken']) AND !empty($_SESSION['fb_tocken'])){
// session tocken not null
if ($_SESSION['fb_tocken'] == $this->tocken){
// session tocken = current tocken
// update last active
return true;
} elseif ($this->tocken == APPLICATION_TOCKEN) {
// current tocken == default tocken
$this->logout();
} else {
// current tocken <> default tocken
$this->logout();
}
} else {
// session tocken is null
if ($this->tocken == APPLICATION_TOCKEN){
// current tocken is default
return false;
} else {
// current tocken is not default
if ($this->getUserInfo()){
// user registered - login action
if ($this->login())
return true;
else
return false;
} else {
// register new user
if ($this->register()){
if ($this->login()){
return true;
} else
return false;
} else
return false;
}
}
}
}
// ...
};
ユーザーがalogritmを使用した場合:
1-Facebookにログイン2-アプリケーションにログイン3-Facebookからログアウト4-Facebookにログイン5-アプリケーションを開く
アプリケーションの問題:
5番目のステップの後、私のアプリはユーザーを承認できません。ただし、ユーザーが「更新」を押すと、許可されます。