✅ WEB- und WordPress-Nachrichten, Themen, Plugins. Hier teilen wir Tipps und beste Website-Lösungen.

So generieren Sie ein langlebiges Facebook-Zugriffstoken

24

Sind Sie schon einmal auf API-Aufgaben gestoßen? Dann haben Sie wahrscheinlich vom ‘Access Token’ gehört. Das Zugriffstoken ist eine Art Identitätstoken, das soziale Websites (wie Facebook) verwenden, um Operationen im Namen eines Benutzers durchzuführen.

Mit anderen Worten, eine Anwendung mit gültigem Zugriffstoken kann Ihre Freundesliste abrufen, auf Ihrer Pinnwand posten, Ihre grundlegenden Details wie E-Mail, Geburtsdatum usw. abrufen. Natürlich müssen Sie für alle diese Zugriffe die Erlaubnis erteilen. Ohne Ihre Berechtigung kann das Zugriffstoken nicht auf Benutzerinformationen zugreifen.

Wenn man über die Facebook-API spricht, bietet ihre API zwei Arten von Token: kurzlebige und langlebige Zugriffstoken.

Das kurzlebige Token hat eine kurze Zeitspanne. Das bedeutet, dass Sie nach Ablauf des Tokens keine API-Aufrufe mehr geben können. Sie erhalten die nicht autorisierte Antwort, sobald das Token abläuft. Jeder API-Aufruf erfordert ein gültiges Zugriffstoken als Parameter, dann senden nur sie eine Antwort zurück.

Sobald das Token abgelaufen ist, müssen Sie den Benutzer bitten, den Anmeldevorgang erneut mit Ihrer Anwendung durchzuführen.

Das macht keinen Sinn. Es ist eine Art wiederholter Vorgang, den der Benutzer eigentlich nicht mag.

Hier sollten wir das Konzept des langlebigen Zugriffstokens von Facebook verwenden. Ein langlebiger Token hält in der Regel etwa 60 Tage. Und es ist viel besser, als kurzlebige Token zu verwenden.

Sehen wir uns jedoch an, wie Sie ein langlebiges Zugriffstoken von Facebook generieren.

Registrieren Sie eine Anwendung

Um zu beginnen, müssen Sie zunächst eine Anwendung bei Facebook Developers registrieren. Sie werden Schritt für Schritt Anleitung auf, wie eine App registrieren und konfigurieren hier.

Sobald Sie die App registriert haben, kopieren Sie die App-ID und das App-Geheimnis, die wir in Kürze benötigen.

So generieren Sie ein langlebiges Facebook-Zugriffstoken

Generieren Sie ein langlebiges Zugriffstoken

Jetzt haben wir App-ID und App-Geheimschlüssel. Erstellen Sie eine Datei namens config.phpund fügen Sie unsere Schlüssel mit der PHP-Methode define() hinzu.

config.php

<?php
define('CLIENT_ID', 'YOUR_CLIENT_ID');
define('CLIENT_SECRET', 'YOUR_CLIENT_SECRET');
define('REDIRECT_URL', 'YOUR_SITE_URL/redirect.php');
?>

Im obigen Code haben wir REDIRECT_URL zu YOUR_SITE_URL/redirect.php angegeben. Erstellen Sie also die Datei redirect.php. Dies ist die Datei, in die wir den Code zum Generieren eines langlebigen Tokens schreiben.

Zuvor müssen wir jedoch eine Anmelde-URL erstellen, die einen Benutzer auf die Facebook-Anmeldeseite umleitet, um Ihre App zu autorisieren. Erstellen Sie eine Datei login.phpund fügen Sie den folgenden Code hinzu.

login.php

<?php
require_once "config.php";
echo "<a href='https://www.facebook.com/v2.10/dialog/oauth?client_id=". CLIENT_ID. "&redirect_uri=". REDIRECT_URL. "'>Login To Facebook</a>";
?>

Wenn ein Benutzer auf den Link zum Anmelden bei Facebook klickt, wird er zur Facebook-Anmeldeseite weitergeleitet. Sobald sie die Erlaubnis für Ihre App erteilt haben, wird der Benutzer zur YOUR_SITE_URL/redirect.php weitergeleitet. Im Gegenzug erhalten wir von Facebook einen Code als GET-Parameter. Mit diesem Codewert generieren wir ein erstes kurzlebiges Zugriffstoken. Und dann generieren wir durch dieses kurzlebige Token ein langlebiges Zugriffstoken.

Stellen Sie sicher, dass die CURL-Erweiterung auf Ihrem Server aktiviert ist, sonst funktioniert unser Code nicht wie erwartet.

umleitung.php

<?php
require_once "config.php";
 
if (isset($_GET['code']) && !empty($_GET['code'])) {
    $post = ['client_id'=> CLIENT_ID, "redirect_uri" => REDIRECT_URL, "client_secret" => CLIENT_SECRET, 'code' => $_GET['code']];
    $arr_result = getFBResponse($post);
 
    //generate long-lived access token
    if (isset($arr_result->access_token)) {
        $post1 = ['grant_type' => 'fb_exchange_token', 'client_id'=> CLIENT_ID, "client_secret" => CLIENT_SECRET, 'fb_exchange_token' => $arr_result->access_token ];
        $arr_result1 = getFBResponse($post1);
        echo "Long Lived Token: ". $arr_result1->access_token;
    }
}
 
function getFBResponse($arr_post = []) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,'https://graph.facebook.com/v2.10/oauth/access_token');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($arr_post));
    $response = curl_exec($ch);
    return json_decode($response);
}
?>

Das ist es! Wir hoffen, Sie haben etwas über den Prozess der Generierung eines langlebigen Zugriffstokens für die Facebook-API erfahren. Bitte teilen Sie Ihre Gedanken im Kommentarbereich unten mit.

Aufnahmequelle: artisansweb.net

Diese Website verwendet Cookies, um Ihre Erfahrung zu verbessern. Wir gehen davon aus, dass Sie damit einverstanden sind, Sie können sich jedoch abmelden, wenn Sie möchten. Annehmen Weiterlesen