Facebook SDK error during login attempt: No URL set
OAuth helps to manage the access tokens you have to validate them
// Logged inecho '<h3>Access Token</h3>';var_dump($accessToken->getValue());// The OAuth 2.0 client handler helps us manage access tokens$oAuth2Client = $fb->getOAuth2Client();// Get the access token metadata from /debug_token$tokenMetadata = $oAuth2Client->debugToken($accessToken);echo '<h3>Metadata</h3>';var_dump($tokenMetadata);// Validation (these will throw FacebookSDKException's when they fail)$tokenMetadata->validateAppId({app-id}); // Replace {app-id} with your app id// If you know the user ID this access token belongs to, you can validate it here//$tokenMetadata->validateUserId('123');$tokenMetadata->validateExpiration();if (! $accessToken->isLongLived()) { // Exchanges a short-lived access token for a long-lived one try { $accessToken = $oAuth2Client->getLongLivedAccessToken($accessToken); } catch (Facebook\Exceptions\FacebookSDKException $e) { echo "<p>Error getting long-lived access token: " . $helper->getMessage() . "</p>\n\n"; exit; } echo '<h3>Long-lived</h3>'; var_dump($accessToken->getValue());}$_SESSION['fb_access_token'] = (string) $accessToken;// User is logged in with a long-lived access token.// You can redirect them to a members-only page.//header('Location: https://example.com/members.php');
I'm not sure if this helps, but you can use a package to handle social login (fb, twitter, google, ...) you might want to look at this PHP League package and use their library instead of using the facebook SDK.
https://github.com/thephpleague/oauth2-client
Sometimes when you're really stuck, it helps to try things from a different angle.
check your callback url or OAuth url in facebook developer panel. And be sure that you put https:// at the beginning of callback url. This is really old bug of facebook... maybe this could help...