私はlaravelを使用してFacebookアプリを構築しておりRedirect::to('thank_you')
、フォームを送信した後にユーザーをサンキューページにリダイレクトするためにコードで使用しています。
function submitForm() {
//Process input
//Done, now redirect to thank you page
Redirect::to('thank_you')
}
ただし、「thank_you」では Facebook のアクセス トークンがなくなっています。したがって、実行する必要が$facebook->api('/me')
ある場合、有効なアクセス トークンが必要であるという例外がスローされます。
それは私を夢中にさせています!何か提案はありますか?
(私は現在、$_SESSION['user_token'] にアクセス トークンを保存しています。しかし、ユーザーがログアウトすると、これはまだ有効であるため、ユーザーはアプリで自分の FB アカウントからログアウトできません。クライアントはログアウトしません。サイトにログアウトボタンが欲しい)
//Fix for invalid access tokens
if(!isset($_REQUEST['code']) && isset($_SESSION['accessToken'])) {
$this->facebook->setAccessToken($_SESSION['accessToken']);
}
//if the user has just done facebook login & auth
else if(isset($_REQUEST['code'])) {
$_SESSION['accessToken'] = $this->facebook->getAccessToken();
}