2012-03-26 12 views
0

Gibt es Facebook-Einstellungen oder Browsereinstellungen oder Firewalls oder Browser-Plugins etc., die verhindern, dass eine Facebook-App überprüft, ob einem Nutzer eine bestimmte Seite gefallen hat (Benutzer hat bereits Zugriff auf grundlegende Informationen erlaubt) ? Ich habe versucht 3 Methoden, aber für einige Benutzer die Erkennung fehlgeschlagen (oder manchmal fehlgeschlagen). Im Folgenden sind die Methoden, die ichFacebook kann nicht wie für eine Seite erkannt werden

getestet

FQL Abfrage

public function getLikedUser($user_id, $page_id){ 
    $result = $this->facebookObject()->api(array(
    "method" => "fql.query", 
    "query" => "SELECT uid FROM page_fan WHERE uid=$user_id AND page_id=$page_id" 
)); 

    if(count($result)){ 
    return true; 
    }else{ 
    return false; 
    } 
} 

REST api

public function getLikedUser($user_id, $page_id){ 

    $like = $this->facebookObject()->api($user_id.'/likes/'.$page_id); 

    if(!empty($like['data'])){ 
    return true; 
    } else { 
    return false; 
    } 
} 

Graph API

public function getLikedUser($user_id, $page_id){ 
    $like = file_get_contents("https://graph.facebook.com/".$user_id."/likes/".$page_id."&access_token=".$this->facebookObject()->getAccessToken()); 
    $likeD = json_decode($like); 
    if(!empty($likeD->data)){ 
    return true; 
    } else { 
    return false; 
    } 
} 

Aber manchmal versagt sie. Wer weiß warum für einige Benutzer, oder manchmal kann die Seite wie Erkennung fehlschlagen?

Antwort

0

Was page_fan Tabelle in der Dokumentation beschrieben:

die page_fan Tabelle zu lesen Sie benötigen

  • jeden gültigen access_token wenn es (zu jemandem auf Facebook sichtbar) öffentlich ist.
  • user_likes Berechtigungen, wenn der aktuelle Benutzer abgefragt wird.
  • friends_likes Berechtigungen, wenn der Freund eines Benutzers abgefragt wird.

likes connection für user verhält sich die gleiche Weise.

Sie müssen Ihren Benutzern die Berechtigung user_likes erteilen, um prüfen zu können, ob der Benutzer die jeweilige Seite gemocht hat (andernfalls gibt es Fälle, in denen Sie diese Informationen nicht erhalten).

Verwandte Themen