Jak zaimplementować logowanie za pomocą LinkedIn w witrynie za pomocą PHP
Logowanie społecznościowe jest obecnie popularnym terminem. Wiele stron internetowych umożliwia logowanie się przy użyciu kont społecznościowych. W ten sposób użytkownik nie musi przechodzić procesu weryfikacji w celu utworzenia konta w Twojej witrynie. Oszczędza to również budowania systemu przepływu rejestracji. Serwisy społecznościowe już to zrobiły, a strony internetowe mogą polegać na serwisach społecznościowych w celu weryfikacji użytkownika.
W użyciu jest kilka popularnych sieci społecznościowych, takich jak Google, Facebook, Twitter, LinkedIn itp. W tym artykule badamy logowanie za pomocą LinkedIn przy użyciu PHP. Jeśli interesuje Cię logowanie Google, zapoznaj się z naszym artykułem Jak dodać logowanie Google OAuth do witryny za pomocą PHP.
Utwórz aplikację na LinkedIn
Aby dodać login LinkedIn do swojej witryny, musisz najpierw utworzyć aplikację na swoim koncie LinkedIn. Potrzebujemy identyfikatora klienta, tajemnicy klienta aplikacji LinkedIn. Musisz również ustawić autoryzowany adres URL przekierowania w aplikacji.
- Przejdź do sieci programistów LinkedIn.
- Kliknij przycisk „Utwórz aplikację".
- Uzupełnij podstawowe informacje w formularzu.
- Dodaj
YOUR_DOMAIN_URL/index.php
w polu Adresy URL przekierowania. - Skopiuj klucze Client ID i Client Secret.
Ze względu na samouczek używam serwera lokalnego, więc ustawiłem Redirect URL jako http://localhost/linkedin/index.php
. Możesz dostosować ten adres URL zgodnie z wymaganiami.
Następnie kliknij zakładkę „Produkty”. Tutaj z listy dostępnych produktów wybierz „Zaloguj się przez LinkedIn”. Po wybraniu tego produktu trafi on do recenzji, a następnie zostanie dodany jako produkt dodany. Sprawdzenie może zająć trochę czasu. W moim przypadku zajęło to około 10 minut.
Instalacja biblioteki HybridAuth
HybridAuth to znak społecznościowy typu open source w bibliotece PHP. Korzystając z tej biblioteki, możesz dodać login społecznościowy dla jednego lub wielu dostawców, takich jak Google, Facebook, Twitter, LinkedIn itp. Ta biblioteka ułatwia życie programistom. Jako programista nie musisz się martwić o obsługę procesu OAuth. Biblioteka HybridAuth robi to za nas w swoim rdzeniu.
Utwórz composer.json
plik w folderze głównym projektu i dodaj do niego poniższy kod.
{
"require": {
"hybridauth/hybridauth": "~3.0"
}
}
Następnie otwórz terminal w katalogu głównym projektu i uruchom polecenie:
composer install
Utwórz config.php
plik i dodaj swoje poświadczenia, zakres logowania LinkedIn OAuth oraz adres URL wywołania zwrotnego.
<?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 );
Pamiętaj, aby zastąpić symbole zastępcze rzeczywistymi wartościami. Przekazałem adres URL wywołania zwrotnego, YOUR_DOMAIN_URL/index.php
który należy dostosować zgodnie z wymaganiami.
Zaloguj się przez LinkedIn w PHP
Wszyscy ustawiamy się z konfiguracjami. Więc chodźmy dalej i utwórzmy 2 pliki index.php
, logout.php
w katalogu głównym twojego projektu. Najpierw dodaj poniższy kod w index.php
pliku.
<?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() ;
}
W powyższym kodzie biblioteka HybridAuth sprawdza, czy użytkownik jest zalogowany na LinkedIn. Jeśli tak nie jest, użytkownik zostanie przekierowany do LinkedIn, gdzie będzie musiał autoryzować swoje konto w Twojej aplikacji. Po pomyślnej autoryzacji użytkownik przekierowuje z powrotem do metody index.php
i za pomocą getUserProfile()
której drukuje informacje o użytkowniku.
Na koniec, aby wylogować użytkownika z aplikacji należy dodać do logout.php
pliku poniższy kod .
<?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() ;
}
Mam nadzieję, że rozumiesz, jak dodać logowanie z LinkedIn na stronie z PHP. Podziel się swoimi przemyśleniami w sekcji komentarzy poniżej.
Powiązane artykuły
- Jak dodać logowanie Google OAuth do witryny za pomocą PHP
- Jak dodać Twitter OAuth Login w witrynie za pomocą PHP
- Zaloguj się przez Google w Laravel za pomocą Laravel Socialite