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

Social Login in PHP mit der HybridAuth-Bibliothek

21

Die Integration der Social-Login-Funktion in die Website ist heutzutage ein Trend. Diese Funktion erleichtert die Benutzeranmeldung und den Registrierungsprozess. Wenn ein Benutzer bereit ist, sein soziales Profil auf Ihrer Website zu verwenden, muss er Ihr Registrierungsformular nicht ausfüllen, sondern sein Konto aktivieren.

Soziale Websites stellen der Website auch keine privaten Informationen eines Benutzers zur Verfügung. Stattdessen bieten sie nur grundlegende Details wie Name, Geschlecht, soziale ID (auf einer bestimmten sozialen Website), E-Mail. Die Webanwendung kann nach weiteren Details eines Benutzers fragen. Der Benutzer muss jedoch Zugriff auf zusätzliche Informationen gewähren. Es hängt völlig davon ab, ob der Benutzer Zugriff auf weitere Informationen gewährt oder nicht. Einige soziale Websites wie Twitter stellen keine E-Mail eines Benutzers bereit. Der Punkt ist, dass es sicher ist, Ihr soziales Website-Profil für die Interaktion mit einer Website zu verwenden.

Social Login in PHP mit der HybridAuth-Bibliothek

Für einen Entwickler ist es nicht einfach, einen Code für die Anmeldung in sozialen Netzwerken zu schreiben. Zuerst müssen sie die Dokumentation lesen, die von sozialen Websites wie Facebook oder Twitter bereitgestellt wird. Jede soziale Website verfügt über eine eigene Bibliothek und eine eigene Möglichkeit, die Funktion zur sozialen Anmeldung zu integrieren.

Sie möchten beispielsweise ein soziales Login mit Facebook und Twitter hinzufügen. In diesem Fall muss ein Entwickler für beide sozialen Websites einen anderen Code schreiben, wie er in seiner offiziellen Dokumentation angegeben ist.

Es ist für einen Entwickler nicht einfach, einen Code zu entwickeln, wenn Sie mehr als eine soziale Website haben, mit der Sie interagieren können.

Dank HybridAuth – Open Source Social Sign on PHP-Bibliothek. Das HybridAuth-Team macht unseren Entwicklern das Leben leicht.

Wenn Sie diese Bibliothek verwenden, müssen wir nicht die Dokumentation zu sozialen Websites lesen, um die soziale Anmeldung in die Website zu integrieren. Was wir alles tun müssen, ist – die HybridAuth-Bibliothek korrekt zu installieren und zu konfigurieren und eine Anwendung auf sozialen Websites zu registrieren (was auch dann erforderlich ist, wenn wir die HybridAuth-Bibliothek nicht verwenden).

Installation

Um die HybridAuth-Bibliothek zu installieren, wird die Verwendung von Composer empfohlen. Wenn Composer auf Ihrem System nicht installiert ist, können Sie es von der offiziellen Website herunterladen.

Erstellen Sie eine Composer.json-Datei in Ihrem Projektstammverzeichnis und fügen Sie den folgenden Code darin ein.

{
    "require": {
        "hybridauth/hybridauth": "2.9.6"
    }
}

Wir haben "2.9.6" bestanden, da es sich zum Zeitpunkt des Schreibens dieses Artikels um die neueste stabile Version der HybridAuth-Bibliothek handelt.

Öffnen Sie das Terminal im Stammverzeichnis des Projekts und führen Sie den Befehl aus composer install. Es installiert die HybridAuth-Bibliothek Version 2.9.6 auf Ihrem System.

Aufbau

Stellen Sie sicher, dass Sie eine Bibliothek richtig konfigurieren. Wenn Sie es nicht richtig konfigurieren, profitieren Sie nicht von einer Bibliothek und geraten in die Frustration.

Kopieren Sie die 2 Dateien config.php und index.php aus dem Verzeichnis "vendorhybridauthhybridauthhybridauth" und legen Sie sie in Ihr Stammverzeichnis eines Projekts. Benennen Sie die Datei index.php in hybridauth.php um, da wir möglicherweise eine andere index.php an derselben Stelle haben.

Öffnen Sie die Datei config.php und fügen Sie Ihre Anwendungsschlüssel und Ihr Geheimnis im zugehörigen Provider-Array hinzu.

Klicken Sie hier, um die Liste aller von HybridAuth unterstützten sozialen Anbieter zu erhalten. Wir finden auch Anbieter und zusätzliche Anbieter in der installierten Bibliothek selbst. Um Anbieter zu sehen, gehen Sie zu VendorhybridauthhybridauthhybridauthHybridProviders und für zusätzliche Anbieter schauen Sie in das Verzeichnis Vendorhybridauthhybridauthadditional-providers.

Nehmen wir an, wir müssen die Anwendungsdetails eines Facebook angeben. Dafür sieht unser Code in der config.php für den Facebook-Anbieter wie folgt aus.

return array(
    "base_url" => "YOUR_SITE_URL/hybridauth.php",
    "providers" => array(
        //other providers code
        "Facebook" => array(
            "enabled" => true,
            "keys" => array("id" => "YOUR_APP_ID", "secret" => "YOUR_APP_SECRET"),
            "trustForwarded" => false,
        ),
        //other providers code
    ),
);

Stellen Sie sicher, dass Sie die Platzhalter YOUR_APP_ID und YOUR_APP_SECRET durch die tatsächlichen Werte ersetzt haben.

Wir haben auch den Pfad einer hybridauth.php-Datei für base_url übergeben.

Öffnen Sie als Nächstes die Datei hybridauth.php und nehmen Sie die folgenden Änderungen vor.

Ersetzen

require_once( "Hybrid/Auth.php" );
require_once( "Hybrid/Endpoint.php" );
 
Hybrid_Endpoint::process();

Mit

require 'vendor/autoload.php';
 
Hybrid_Endpoint::process();

Tatsächlicher Social-Login-Code mit der HybridAuth-Bibliothek

Zu diesem Zeitpunkt haben wir die Installation und Konfiguration einer Bibliothek abgeschlossen. Als nächstes müssen wir einen tatsächlichen Social-Login-Code schreiben.

Nehmen wir an, wir müssen Social Login mit Facebook verwenden, dann sieht unser Code wie folgt aus. Wir gehen davon aus, dass Sie im Stammordner die Datei sign-in.php haben, in die Sie einen Code schreiben müssen.

anmelden.php

require 'vendor/autoload.php';
 
try {
    $hybridauth = new Hybrid_Auth( 'config.php' );
 
    $adapter = $hybridauth->authenticate( "Facebook" ); //it can be Twitter, Google etc.
 
    $user_profile = $adapter->getUserProfile();
} catch(Exception $e){
    echo 'Oops, we ran into an issue! '. $e->getMessage();
}

Der an die Methode authenticate() übergebene Parameter muss mit dem Anbieterschlüssel in der Datei config.php übereinstimmen. Die Funktion authenticate() prüft, ob ein Benutzer authentifiziert ist. Wenn der Benutzer nicht authentifiziert ist, leitet er auf die Anmeldeseite einer zugehörigen sozialen Website um. Nach erfolgreicher Authentifizierung leitet der Benutzer erneut zu unserer Datei sign-in.php um.

In der nächsten Zeile rufen wir die Details eines authentifizierten Benutzers mit der Funktion getUserProfile() ab.

Um den an den Anbieter angehängten Benutzer abzumelden, schreiben wir einfach den untenstehenden Code in unsere logout.php-Datei.

logout.php

require 'vendor/autoload.php';
 
Hybrid_Auth::logoutAllProviders();

Wir hoffen, dass Sie verstehen, wie Sie mithilfe der HybridAuth-Bibliothek ein Skript-Social-Login in PHP hinzufügen. Wenn Sie Fragen oder Anregungen haben, hinterlassen Sie bitte unten einen Kommentar. Vielleicht möchten Sie auch unseren Artikel Social Login System Using Laravel Socialite lesen .

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