Mercurial > nebulaweb3
diff default/assets/vendors/theme-widgets/vendor/mute/facebook/example/handle-expired-access-tokens.php @ 0:1d038bc9b3d2 default tip
Up:default
author | Liny <dev@neowd.com> |
---|---|
date | Sat, 31 May 2025 09:21:51 +0800 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/default/assets/vendors/theme-widgets/vendor/mute/facebook/example/handle-expired-access-tokens.php Sat May 31 09:21:51 2025 +0800 @@ -0,0 +1,60 @@ +<?php + +/** + * Handle expired access tokens + * + * @author Xavier Barbosa + * @since 13 February, 2013 + * @link https://developers.facebook.com/blog/post/2011/05/13/how-to--handle-expired-access-tokens/ + **/ + +use Mute\Facebook\App; +use Mute\Facebook\Exception\GraphAPIException; + +/** + * Default params + **/ + +$app_id = 'YOUR_APP_ID'; +$app_secret = 'YOUR_APP_SECRET'; +$my_url = 'YOUR_POST_LOGIN_URL'; + +/** + * The process + **/ + +$app = new App($app_id, $app_secret); + +// known valid access token stored in a database +$access_token = "YOUR_STORED_ACCESS_TOKEN"; + +$code = $_REQUEST["code"]; + +// If we get a code, it means that we have re-authed the user and can get a valid access_token. +if ($code) { + $params = $app->getOAuth()->getAccessToken($code); + $access_token = $params['access_token']; +} + +try { + // Attempt to query the graph: + $decoded_response = $app->get('me', array( + 'access_token' => $access_token, + )); + + // success + echo "success" . $decoded_response['name']; + echo $access_token; +} catch (GraphAPIException $e) { + if ($e->getType() == "GraphAPIException") { + // Retrieving a valid access token. + $dialog_url = $app->getOAuth()->getCodeURL($my_url); + + echo "<script> top.location.href=" . json_encode($dialog_url) . "</script>"; + + } + else { + echo "other error has happened"; + } +} +