✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

Kuinka lisätä Google OAuth -kirjautuminen verkkosivustoon PHP: n avulla

21

Jos sinulla on verkkosivusto, johon käyttäjä voi rekisteröityä, sinun kannattaa lisätä Google OAuth -kirjautumisominaisuus. Google-kirjautuminen verkkosivustoille lisää käyttäjille helpon rekisteröintiprosessin. Käyttäjät voivat kirjautua Google-tilillesi verkkosivustollesi. Heidän ei tarvitse täyttää rekisteröintilomakettasi, aktivoida tilinsä sähköpostitse jne.

Tässä artikkelissa tutkitaan, miten Google OAuth -kirjautumisominaisuus lisätään verkkosivustoosi.

Hanki valtakirjasi

Aloita Google login API -sovellusliittymän luominen ensin luomalla projekti Googlessa ja hankkimalla kirjautumistiedot. Alla on vaiheet, jotka sinun tulisi suorittaa Google-projektin luomiseksi.

  • Siirry Google Developer Consoleen.
  • Napsauta avattavaa valikkoa ja luo uusi projekti napsauttamalla (+) -merkkiä. Vaihtoehtoisesti voit valita myös olemassa olevan projektin.
  • Valitse projekti ja napsauta kohtaa ‘SALLITA APIS JA PALVELUT’. Kirjoita hakukenttään ‘Google+’ ja valitse Google+ -sovellusliittymä. Ota se käyttöön.
  • Jälleen palaa projektin hallintapaneeliin ja valitse sivupalkista Tunnistetiedot.
  • Napsauta Tunnistetiedot-välilehden avattavaa Luo tunnistetiedot -kohtaa ja valitse OAuth-asiakastunnus.
  • Valitse verkkosovellus kohdasta Sovelluksen tyyppi. Kirjoita URL-osoite Valtuutetut uudelleenohjaus-URL-osoitteet -kohtaanYOUR_DOMAIN_URL/index.php
  • Kun olet tallentanut sen, saat valintaikkunan sekä asiakastunnuksesi ja asiakassalaisuutesi. Kopioi nämä avaimet, joita tarvitsemme seuraavissa vaiheissa.

Saatat huomata uudelleenohjauksen URL-osoitteen, jonka asetimme sovelluksessa. Tässä opetusohjelmassa käsittelemme soittokoodia index.php. Käyttäjät voivat käyttää muita tiedostoja tähän tarkoitukseen.

HybridAuth-kirjaston asennus

HybridAuth on avoimen lähdekoodin sosiaalisen kirjautumisen PHP-kirjasto. Tätä kirjastoa käyttämällä voimme lisätä sosiaalisen kirjautumisen yhdelle tai useammalle palveluntarjoajalle, kuten Google, Facebook, Twitter jne.

Kuinka lisätä Google OAuth -kirjautuminen verkkosivustoon PHP: n avulla

Asennetaan HybridAuth-kirjasto säveltäjän avulla. Luo composer.jsontiedosto 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.phptiedosto ja lisää siihen alla oleva koodi määrittääksesi Google-kirjautumistunnuksen.

<?php
require_once 'vendor/autoload.php';
 
$config = [
    'callback' => 'YOUR_DOMAIN_URL/index.php',
    'keys'     => [
                    'id' => 'YOUR_CLIENT_ID',
                    'secret' => 'YOUR_CLIENT_SECRET'
                ],
    'scope'    => 'https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email',
    'authorize_url_parameters' => [
            'approval_prompt' => 'force', // to pass only when you need to acquire a new refresh token.
            'access_type' => 'offline'
    ]
];
 
$adapter = new HybridauthProviderGoogle( $config );

Muista korvata paikkamerkit todellisilla arvoilla. Yllä olevassa koodissa YOUR_DOMAIN_URL/index.phpvälitimme soittopyynnön arvona. Säädä tätä polkua vaatimuksesi mukaan.

Lisää Google OAuth -kirjautuminen

Olemme kaikki asettaneet kokoonpanomme kanssa ja hyvä mennä eteenpäin. Joten, luodaan tiedostot index.phpja logout.phpprojektin juurihakemistoon.

index.php

<?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() ;
}

Nyt kun suoritat index.phpselaimessa, koodimme tarkistaa ensin, onko käyttäjä todennettu Google-palvelulla vai ei. Jos ei, se ohjaa Googlen kirjautumissivulle. Käyttäjän on kirjauduttava sisään Google-tilillään ja sitten se ohjaa index.phpuudelleen. Kun käyttäjä tulee kirjautumissivulle, saamme käyttäjäprofiilin menetelmällä getUserProfile().

Vuonna logout.phptiedosto meidän täytyy vain irrottaa Google sovittimen.

logout.php

<?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() ;
}

Toivomme, että saat tietää Google OAuth -kirjautumisesta PHP-verkkosivustolla. Ole hyvä ja jaa ajatuksiasi alla olevassa kommenttiosassa.

Aiheeseen liittyvät artikkelit

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja