Salvare i dati restituiti dopo autenticazione OAuth2

parsifal

Nuovo Utente
18 Gen 2014
26
0
0
salve a tutti, in locale ho creato una pagina che richiede l'autenticaizone con l'account google tramite OAuth2.
Vi posto il codice:
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.profile';
    //var SCOPE = 'https://www.googleapis.com/auth/gmail.readonly';       
    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>

Questo codice, mi permette di inserire i dati per loggare tramite la mail di google e una volta confermata mi reindirizza alla pagina indicata dalla variabile "REDIRECT". Fin qui tutto bene, la nuova pagina redirect mi restituisce nell'url l'access token senza dare errori.
I miei dubbi principali sono due:
1:Salvare tutti i dati relativi all'autenticazione. da quel che ho capito tutto ciò che mi serve dovrebbe stare nell'url della pagina callback ma non capisco come estrapolarli e salvarli.

2: quale 'scope' conviene usare per avere il maggior numero di dati possibili dell'utente che si autentica tramite gmail. Momentaneamente sto utilizzando "userinfo.mail", ne conoscete altri che restituiscono più dati?
Grazie in anticipo

PS: al momento valuto qualsiasi consiglio, anche consigli sull'implementazione dello stesso programma in php.
 
Discussioni simili
Autore Titolo Forum Risposte Data
L [PHP] Salvare csv da form dati PHP 5
M Salvare i dati nel db e aprire altra pagina php PHP 7
S [PHP] Salvare dati tabella in formato exel PHP 0
C Salvare dati form in un file di testo PHP 2
S Salvare dei dati in una determinata tabella in base al select che l'utente seleziona PHP 8
B Salvare dati in locale e sincronizzarli... Javascript 26
G salvare dati array PHP 7
C Salvare dati inviati tramite form in un array PHP 2
P Salvare dati da pagina web .NET Framework 2
M JavaScript: lanciare funzione ASP per salvare dati in database Javascript 0
P Salvare dati da un db Classic ASP 2
neo996sps [Visual Basic Express] Salvare i dati in un DB Access Programmazione 1
M Salvare i dati di un form su database... HTML e CSS 2
L salvare una immagine elaborata in canvas Javascript 1
L salvare una immagine elaborata in canvas Javascript 1
E Salvare immagini PHP 0
L salvare codice html in mysql PHP 3
L salvare somma con sottrazione PHP 1
M Salvare coordinate Maps nel DB PHP 2
D SALVARE "MASCHERA" + "ALLEGATO PDF" IN UN UNICO PDF MS Access 0
A Twitter aggiungere tweet a campagna esistente o salvare pubblico Social Media Marketing 0
D Salvare in diversi campi mysql con diversi ID PHP 0
D [Javascript] salvare immagine canvas - paypal Javascript 0
M Salvare JSONObject in Shared Preference Sviluppo app per Android 0
M [PHP] Salvare campo di una tabella in una variabile PHP 14
S [ASP] SALVARE VALORE SELECT OPTION SU CAMPO TABELLA ACCESS Classic ASP 9
M [PHP] FPDF Salvare su disco C locale Windows PHP 3
C Photoshop CS 6 salvare una modifica Photoshop 0
A Salvare immagine ridimensionata in MySql con GD PHP 12
G php salvare file in campo blob mysql: massimo 4MB PHP 1
M Salvare pagine web come segnalibro con istruzioni javascript Javascript 0
L Salvare posizione maps Sviluppo app per Android 0
G [PHP] SALVARE RECORD ESTRATTI DA DATABASE PHP 6
D Come salvare scelta della select "dinamica" ajax-php? Come dato php o attributo value tag option? Ajax 5
P [SOLVED] salvare il TCPDF output in mysql e rivisualizzarlo PHP 3
M Form ASP su MsSQL salvare 2 campi in 1 Classic ASP 4
V [PHP] Salvare campo radio in db e leggerlo PHP 15
Benix89 Come salvare radio button selezionato Magento 1
Benix89 Salvare radio button selezionato PHP 2
P Come salvare il proprio diario di fb Discussioni Varie 0
M Salvare in tabella link file importato PHP 1
F Cliccare e salvare src immagine HTML e CSS 2
M Cartella predefinita dove salvare i backup PHP 0
P dove si va a salvare il dbase phpmyadm una volta creato ???? Database 0
P dove si va a salvare il dbase phpmyadm una volta creato ???? Database 7
C Salvare il click su di un Button Sviluppo app per Android 9
Emix Salvare documenti in DB PHP 3
D salvare righe dinamicamente PHP 3
R Mettere la possibilità di Salvare in un gioco =) Come si fa? Java 2
M Salvare select con cookie PHP 1

Discussioni simili