Facebook PHP SDK zajmujący się tokenami dostępu

Czołgałem się po wielu różnych odpowiedziach, ale wciąż jestem trochę zmieszany z tym, jak powinienem postępować z Facebookiemtokeny dostępu. Jednym z głównych problemów, które mam, jest to, jakie informacje są przechowywane w mojej przeglądarce. Na przykład, loguję się do aplikacji, token wygasa, nie mogę zalogować się ponownie, chyba że wyczyszczę ustawienia ciasteczek / aplikacji w przeglądarce.

Natknąłem się na ten wątek:Jak rozszerzyć ważność tokenów dostępu od czasu wycofania offline_access

Co pokazało mi, jak utworzyć rozszerzony token dostępu przez php.

Moje pytania to:

1 Czy muszę przechowywać token dostępu w dowolnym miejscu?

2. Co się stanie, gdy token dostępu wygaśnie lub stanie się nieważny? W tej chwili moja aplikacja po prostu przestaje działać, gdy wygasają te krótkoterminowe.

3. Czy powinienem postępować z nimi, aby sprawdzić, czy wygasły? Używam php sdk i zasadniczo użyłem standardu if ($ user) ... W ten sposób:

require 'sdk/src/facebook.php';

  $facebook = new Facebook(array(
  'appId'  => 'XXXXXXXXXXXXXXXXXXXXX',
  'secret' => 'XXXXXXXXXXXXXXXXXXXXX',
));

  $user = $facebook->getUser();

  if( $user ){
    try{
        $user_profile = $facebook->api('/me');
    } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
    }
  }

  if (!$user){

    $params = array(
    'scope' => 'email',
    );

    $loginUrl = $facebook->getLoginUrl( $params );
        echo '<script type="text/javascript"> 
                window.open("'. $loginUrl .'", "_self"); 
                </script>';
                exit;

 } 
     if( $user ){

    $access_token = $facebook->getExtendedAccessToken();     

     $get_user_json = "https://graph.facebook.com/me?access_token=" 
       . $access_token;

// Rest of my code here...
}
Czy jest coś jeszcze, co powinienem robić, aby obsługiwać tokeny?

. Czy powinienem przekazywać token dostępu między stronami, czy może po prostu wywołać go ponownie na górze każdej strony w ten sposób:

$facebook = new Facebook(array(
  'appId'  => 'XXXXXXXXXXXX',
  'secret' => 'XXXXXXXXXXXX',
  'redirect_uri' => 'http://localhost:8000/',
));
     $token = $facebook->getExtendedAccessToken();

questionAnswers(2)

yourAnswerToTheQuestion