get userinfo da autenticazione oauth2

Gabriele Taibi

Nuovo Utente
14 Mar 2015
1
0
0
Salve, ho un progetto da realizzare nel quale nella pagina di index devo effettuare l'autenticazione oauth2 di google ed infine salvare tutte le variabili restituite dalla funzione "getUserInfo()" in un database.
la mia pagina index è la seguente:

HTML:
<!DOCTYPE html>
<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script>
        var OAUTHURL    =   'https://accounts.google.com/o/oauth2/auth?';
        var VALIDURL    =   'https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=';       
    var SCOPE     =    'https://www.googleapis.com/auth/userinfo.email';
    var CLIENTID    =   'XXX';
        var REDIRECT    =   'http://localhost/oauth2callback.html'
        var TYPE        =   'token';
        var _url        =   OAUTHURL + 'scope=' + SCOPE + '&client_id=' + CLIENTID + '&redirect_uri=' + REDIRECT + '&response_type=' + TYPE;
        var acToken;
        var tokenType;
        var expiresIn;
        var user;
        var loggedIn    =   false;
        function login() {
       var win   =   window.open(_url, "Authentication", 'width=800, height=600');

            var pollTimer   =   window.setInterval(function() {
                try {
                    console.log(win.document.URL);
                    if (win.document.URL.indexOf(REDIRECT) != -1) {
                        window.clearInterval(pollTimer);
                        var url =   win.document.URL;
                        acToken =   gup(url, 'access_token');
                        tokenType = gup(url, 'token_type');
                        expiresIn = gup(url, 'expires_in');
                        win.close();

                        validateToken(acToken);
                    }
                } catch(e) {
                }
            }, 100);
    }
            function validateToken(token) {
                 $.ajax({
                url: VALIDURL + token,
                data: null,
                success: function(responseText){ 
                    getUserInfo();
                }, 
                dataType: "jsonp" 
            });
    function getUserInfo() {
            $.ajax({
                url: 'https://www.googleapis.com/oauth2/v1/userinfo?access_token=' + acToken,
                data: null,
                success: function(resp) {
                    user    =   resp;
                    console.log(user);
                    $('#uName').append(user.name);
                    //$('#imgHolder').attr('src', user.picture);
                },
                dataType: "jsonp"
            });
        }
        }
    </script>
</head>

<body>
    <a href='#' onClick='login();' id="loginText"'> Click here to login </a>
</body>
</html>

Il codice riportato sopra non è mio, è uno script trovato sul web e riadattato alle mie esigenze. Il login sembra funzionare, nella pagina di redirect mi restituisce l'access token e provandolo come url mi restituisce i dati dell'utente. La mia domanda è, dato come è scritta la funziona "getUserInfo()", se sia possibile estrapolare i dati dell'utente direttamente da quella funzione. Nel caso sia possibile, come posso implementarlo?
Il risultato finale deve essere salvare quelle variabili su un database, quindi vi chiedo anche se questa implementazione che ho in mente possa andar bene oppure devo trovare strade alternative.
Grazie in anticipo.
 
Discussioni simili
Autore Titolo Forum Risposte Data
MarcoGrazia Gestire lista campi vuoti in fase di autenticazione jQuery 1
felino Script PHP per leggere un file JSON. autenticazione? PHP 4
F Sistema di autenticazione e pagamento PHP 3
M Login Autenticazione Sviluppo app per Android 0
E [ASP.Net] Autenticazione integrata windows ASP.NET 0
P Salvare i dati restituiti dopo autenticazione OAuth2 Javascript 0
M Richiesta ajax con autenticazione base non funziona ! Ajax 0
E sistema di autenticazione PHP 4
Marco_88 Autenticazione PHP/OOP campi vuoti PHP 26
M Creazione sito con autenticazione utente (registrazione) PHP 3
R Sessioni, cookies e token di autenticazione PHP 0
Y Automatizzare OAuth2 ed autenticazione ASP.NET 0
R problemi di autenticazione PHP 0
B Scaricare file xml dopo autenticazione http PHP 1
M Problema doppia autenticazione HTML e CSS 4
Monital Autenticazione utenti joomla Joomla 0
Q sessione autenticazione PHP 3
M OOP e autenticazione PHP 4
max_400 Proteggere login con autenticazione database PHP 19
U Inviare una mail con autenticazione smtp PHP 4
B autenticazione iis Apache 4
L Autenticazione nascosta su sito Liferay (era: help tirocinio web management) HTML e CSS 0
A Autenticazione automatica su server ftp tramite programma in ASP Classic ASP 2
catellostefano Autenticazione a linux da php PHP 16
codesurfer Autenticazione LDAP PHP 0
F dubbio autenticazione windows reti lan Reti LAN e Wireless 4
A autenticazione con php PHP 5
E Problemi con autenticazione PHP 8
A PHP e sistema di autenticazione PHP 2
E DISPERATO! autenticazione dietro PROXY PHP 4
N classe per la gestione dell'autenticazione Snippet PHP 0
A Autenticazione sicura e Case sensitive Classic ASP 0
S autenticazione via url server apache Apache 0
S Problema reindizzamento dopo autenticazione PHP 4
M Dreamweaver Autenticazione utente Webdesign e Grafica 2
H autenticazione sessione ajax/php Ajax 2
T Form Autenticazione PHP 1
M [VB6] Crystal report e Autenticazione Win MSSQL Programmazione 0
P [PHP] Problema autenticazione mail PHP 0
A Problema con autenticazione e header() PHP 0
I ASP: autenticazione tramite password Classic ASP 4
I Dopo autenticazione non mi redireziona alla pagina. Classic ASP 3
G Autenticazione Utenti: Asp e Access 2000 Classic ASP 1

Discussioni simili