it-swarm.com.de

Facebook: Sie sind nicht angemeldet: Sie sind nicht angemeldet. Bitte melden Sie sich an und versuchen Sie es erneut

code löst Fehler aus

        $helper = $fb->getRedirectLoginHelper();
        $loginUrl = $helper->getLoginUrl("https://apps.facebook.com/{$appname}/", $permissions);
        echo "<script>window.top.location.href='".$loginUrl."'</script>";

Error 

Sie sind nicht angemeldet: Sie sind nicht angemeldet. Bitte melden Sie sich an und versuchen Sie es erneut.

die URL, die den Fehler auslöst, ist (ersetzt meinen Appnamen durch Appname):

https://www.facebook.com/v2.7/dialog/oauth?client_id=8651003434372244&state=f2ad3183f9f04355435434534776ae19688ac&response_type=code&sdk=php-sdkajd.40.40.40.40.40.404&pdf=4&pdf=4&pdf============ 2F & scope = email

volles Skript

     <?php
    require_once  '../../Facebook/autoload.php';
    $fb = new Facebook\Facebook([
      'app_id' => "$appid",
      'app_secret' => "$appsecret",
      'default_graph_version' => 'v2.7',
    ]);
    $helper = $fb->getCanvasHelper();
    $permissions = ['email']; // optionnal
    try {

            $accessToken = $helper->getAccessToken();

    } catch(Facebook\Exceptions\FacebookResponseException $e) {
        // When Graph returns an error
        echo 'Graph returned an error: ' . $e->getMessage();
        exit;
    } catch(Facebook\Exceptions\FacebookSDKException $e) {
        // When validation fails or other local issues
        echo 'Facebook SDK returned an error: ' . $e->getMessage();
        exit;
     }
    if (isset($accessToken)) {

            $accessToken = (string) $accessToken;
            $fb->setDefaultAccessToken($accessToken);

        if (isset($_GET['code'])) {
            header('Location: ./');
        }

        // validating the access token
        try {
            $request = $fb->get('/me');
        } catch(Facebook\Exceptions\FacebookResponseException $e) {
            // When Graph returns an error
            if ($e->getCode() == 190) {
                $helper = $fb->getRedirectLoginHelper();
                $loginUrl = $helper->getLoginUrl("https://apps.facebook.com/{$appname}/", $permissions);
                echo "<script>window.top.location.href='".$loginUrl."'</script>";
                exit;
            }
        } catch(Facebook\Exceptions\FacebookSDKException $e) {
            // When validation fails or other local issues
            echo 'Facebook SDK returned an error: ' . $e->getMessage();
            exit;
        }
        // getting basic info about user
        try {
            $profile_request = $fb->get('/me?fields=name,first_name,last_name,email');
            $user_profile = $profile_request->getGraphNode()->asArray();
        } catch(Facebook\Exceptions\FacebookResponseException $e) {
            // When Graph returns an error
            echo 'Graph returned an error: ' . $e->getMessage();
            $url = "https://apps.facebook.com/{$appname}/";
            echo '<script>window.top.location.href='.$url.'</script>';
            exit;
        } catch(Facebook\Exceptions\FacebookSDKException $e) {
            // When validation fails or other local issues
            echo 'Facebook SDK returned an error: ' . $e->getMessage();
            exit;
        }
        // priting basic info about user on the screen
        //print_r($user_profile);
        // Now you can redirect to another page and use the access token from $_SESSION['facebook_access_token']
    } else {

        $helper = $fb->getRedirectLoginHelper();
        $loginUrl = $helper->getLoginUrl("https://apps.facebook.com/{$appname}/", $permissions);
        echo "<script>window.top.location.href='".$loginUrl."'</script>";
    }
10
scriptkiddie

Dieser Fehler wurde ausgelöst, weil ich die Zeichenbereichs-URL meiner App (Beispiel https://apps.facebook.com/appname/ ) nicht hinzugefügt habe 

Facebook Login-> Einstellungen unter Gültige OAuth-Weiterleitungs-URIs

18
scriptkiddie

Sie müssen die Berechtigungen für die gewünschten URLs in den folgenden Abschnitten der API festlegen:

  • Produkte -> Facebook Logins -> Konfigurationen -> OAuth URi's
  • Legen Sie unter Konfigurationen> Basis die URL Ihrer Site fest
  • Legen Sie unter Konfigurationen> Erweitert eine Liste der zulässigen URIs für die Freigabe Umleitung fest.
2
Fernando Wolff

Wenn Sie die App in einer Staging-Umgebung testen möchten, lassen Sie das Feld IPhone Store ID leer. Dadurch können Sie die aktuelle Plattform speichern und testen.

0
Marcos Curvello

Ich habe dieselbe Warnung, wenn ich versuche, Login-Login mit localhost durchzuführen. Dann füge ich http: // localhost: 3000 zu Valid OAuth-Umleitungs-URIs hinzu und versuche es erneut. Das hat bei mir funktioniert. Vielen Dank @Harkirat Saluja

0
Kakashi