Kuinka toteuttaa sisäänkirjautuminen LinkedInin avulla verkkosivustolla PHP: llä
Sosiaalinen sisäänkirjautuminen on nykyään suosittu termi. Monien verkkosivustojen avulla käyttäjä voi kirjautua sisään sosiaalisen tilinsä avulla. Näin tekemällä käyttäjän ei tarvitse käydä läpi vahvistusprosessia tilin luomiseksi verkkosivustollasi. Se myös säästää sinua rakentamaan rekisteröintivirtajärjestelmän. Sosiaaliset sivustot tekivät tämän jo, ja verkkosivustot voivat luottaa sosiaalisiin sivustoihin käyttäjien vahvistamiseksi.
Käytössä on useita suosittuja sosiaalisen sisäänkirjautumisen verkostoja, kuten Google, Facebook, Twitter, LinkedIn jne. Tässä artikkelissa tutkitaan sisäänkirjautumista LinkedInillä PHP: n avulla. Jos olet kiinnostunut Google-kirjautumisesta, tutustu artikkeliin Miten lisätä Google OAuth -kirjautumista verkkosivustolle PHP: llä.
Luo LinkedIn-sovellus
LinkedIn-sisäänkirjautumisen lisäämiseksi verkkosivustollesi sinun on ensin luotava sovellus LinkedIn-tilillesi. Tarvitsemme LinkedIn-sovelluksen asiakastunnuksen, asiakassalaisuuden. Sinun on myös määritettävä valtuutettu uudelleenohjauksen URL-osoite sovelluksessa.
- Siirry LinkedIn-kehittäjäverkostoon.
- Napsauta Luo sovellus -painiketta.
- Täytä lomakkeen perustiedot.
- Lisää
YOUR_DOMAIN_URL/index.php
Uudelleenohjauksen URL-osoitteet -kenttään. - Kopioi asiakastunnus ja asiakassalaisuudet.
Opetusohjelman vuoksi käytän paikallista palvelinta, joten asetan uudelleenohjauksen URL-osoitteen http://localhost/linkedin/index.php
. Voit säätää tätä URL-osoitetta vaatimuksesi mukaan.
Napsauta seuraavaksi Tuotteet-välilehteä. Valitse täältä käytettävissä olevien tuotteiden luettelosta Kirjaudu sisään LinkedInillä. Kun valitset tämän tuotteen, se tarkistetaan ja lisätään sitten lisätyksi tuotteeksi. Tämä voi kestää jonkin aikaa tarkistamiseen. Minun tapauksessani kesti noin 10 minuuttia.
HybridAuth-kirjaston asennus
HybridAuth on avoimen lähdekoodin sosiaalinen merkki PHP-kirjastossa. Tämän kirjaston avulla voit lisätä sosiaalisen kirjautumisen yhdelle tai useammalle palveluntarjoajalle, kuten Google, Facebook, Twitter, LinkedIn jne. Tämä kirjasto tekee kehittäjän elämästä helppoa. Kehittäjänä sinun ei tarvitse huolehtia OAuth-prosessin käsittelystä. HybridAuth-kirjasto tekee sen meille ytimessä.
Luo composer.json
tiedosto projektin juurikansioon ja lisää alla oleva koodi siihen.
{
"require": {
"hybridauth/hybridauth": "~3.0"
}
}
Avaa seuraavaksi pääte projektin juurihakemistossa ja suorita komento:
composer install
Luo config.php
tiedosto ja lisää tunnistetiedot, LinkedIn OAuth -kirjautumisen laajuus ja takaisinsoitto-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 );
Muista korvata paikkamerkit todellisilla arvoilla. Hyväksyin takaisinsoiton URL-osoitteen, YOUR_DOMAIN_URL/index.php
jota sinun on mukautettava vaatimuksesi mukaan.
Kirjaudu sisään LinkedInillä PHP: ssä
Me kaikki asetamme kokoonpanot. Joten mene eteenpäin ja luoda 2 tiedostoja index.php
, logout.php
projektin juurihakemistoon. Lisää ensin koodi alla olevaan index.php
tiedostoon.
<?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() ;
}
Yllä olevassa koodissa HybridAuth-kirjasto tarkistaa, onko käyttäjä kirjautunut sisään LinkedInillä. Jos se ei ole, käyttäjä ohjaa LinkedIniin, missä hänen on valtuutettava tilinsä sovelluksellasi. Onnistuneen valtuutuksen jälkeen käyttäjä ohjaa takaisin index.php
ja käyttää getUserProfile()
tulostusmenetelmää.
Lopuksi voit kirjautua ulos sovelluksesta lisäämällä alla olevan koodin logout.php
tiedostoon.
<?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() ;
}
Toivon, että ymmärrät, miten voit lisätä kirjautumisen LinkedInillä verkkosivustolle, jolla on PHP. Jaa ajatuksesi alla olevassa kommenttiosassa.