Hur man implementerar inloggning med LinkedIn på webbplatsen med PHP
Social inloggning är en populär term idag. Många webbplatser tillåter användaren att logga in med sina sociala konton. Om du gör det behöver en användare inte gå igenom en verifieringsprocess för att skapa konto på din webbplats. Det sparar också att du bygger ett system för registreringsflöde. Sociala webbplatser har redan gjort detta och webbplatser kan lita på de sociala webbplatserna för användarverifiering.
Det finns flera populära sociala inloggningsnätverk som Google, Facebook, Twitter, LinkedIn, etc. I den här artikeln studerar vi inloggning med LinkedIn med PHP. Om du är intresserad av Google-inloggning, kolla in vår artikel Så här lägger du till Google OAuth-inloggning på webbplatsen med PHP.
Skapa en LinkedIn-ansökan
För att lägga till LinkedIn-inloggning på din webbplats måste du först skapa applikationen på ditt LinkedIn-konto. Vi behöver klient-id, klienthemlighet för LinkedIn-applikationen. Du måste också ställa in den auktoriserade omdirigerings-URL: en i applikationen.
- Gå till LinkedIn Developer Network.
- Klicka på knappen ‘Skapa applikation’.
- Fyll i den grundläggande informationen på formuläret.
- Lägg till
YOUR_DOMAIN_URL/index.php
i fältet Omdirigeringsadresser. - Kopiera klient-ID och klienthemliga nycklar.
För handledningens skull använder jag en lokal server så jag ställer in URL för omdirigering som http://localhost/linkedin/index.php
. Du kan justera den här webbadressen enligt dina krav.
Klicka sedan på fliken "Produkter". Här från listan över tillgängliga produkter väljer du ‘Logga in med LinkedIn’. När du väljer den här produkten kommer den att granskas och sedan inkluderas som en tillagd produkt. Detta kan ta lite tid för granskning. I mitt fall tog det cirka tio minuter.
Installation av HybridAuth Library
HybridAuth är ett socialt tecken på öppen källkod i PHP-biblioteket. Med detta bibliotek kan du lägga till en social inloggning för en eller flera leverantörer som Google, Facebook, Twitter, LinkedIn etc. Detta bibliotek gör utvecklarens liv enkelt. Som utvecklare behöver du inte oroa dig för att hantera OAuth-processen. HybridAuth-biblioteket gör det för oss i sin kärna.
Skapa en composer.json
fil i projektets rotmapp och lägg till koden nedan i den.
{
"require": {
"hybridauth/hybridauth": "~3.0"
}
}
Öppna sedan terminalen i din projektkatalog och kör kommandot:
composer install
Skapa config.php
filen och lägg till dina referenser, omfattning för LinkedIn OAuth-inloggning och återuppringnings-URL.
<?php
require_once 'vendor/autoload.php';
$config = [
'callback' => 'YOUR_DOMAIN_URL/index.php',
'keys' => [
'id' => 'YOUR_CLIENT_ID',
'secret' => 'YOUR_CLIENT_SECRET'
],
'scope' => 'r_liteprofile r_emailaddress',
];
$adapter = new HybridauthProviderLinkedIn( $config );
Se till att ersätta platshållarna med de faktiska värdena. Jag skickade webbadressen för återuppringning som YOUR_DOMAIN_URL/index.php
du behöver justera enligt dina krav.
Logga in med LinkedIn i PHP
Vi är alla inställda på konfigurationerna. Så låt oss gå vidare och skapa 2 filer index.php
, logout.php
i projektets rotkatalog. Först lägger du till koden nedan i index.php
filen.
<?php
require_once 'config.php';
try {
$adapter->authenticate();
$userProfile = $adapter->getUserProfile();
print_r($userProfile);
echo '<a href="logout.php">Logout</a>';
}
catch( Exception $e ){
echo $e->getMessage() ;
}
I ovanstående kod kontrollerar HybridAuth-biblioteket om en användare är inloggad med LinkedIn. Om det inte är så kommer användaren att omdirigera till LinkedIn där de behöver godkänna sitt konto med din ansökan. Vid framgångsrik auktorisering omdirigerar användaren tillbaka till index.php
och använder getUserProfile()
metoden den skriver ut användarinformationen.
Slutligen, för att logga ut användaren från applikationen måste du lägga till koden nedan i en logout.php
fil.
<?php
require_once 'config.php';
try {
if ($adapter->isConnected()) {
$adapter->disconnect();
echo 'Logged out the user';
echo '<p><a href="index.php">Login</a></p>';
}
}
catch( Exception $e ){
echo $e->getMessage() ;
}
Jag hoppas att du förstår hur du lägger till inloggning med LinkedIn på en webbplats med PHP. Dela dina tankar i kommentarsektionen nedan.
relaterade artiklar
- Hur man lägger till Google OAuth-inloggning på webbplatsen med PHP
- Hur man lägger till Twitter OAuth-inloggning på webbplatsen med PHP
- Google-inloggning i Laravel med Laravel Socialite