Home / Programmazione / Javascript - AJAX / Identificare i gruppi dell'utente in Linkedin con Javascript
Mattepuffo

Identificare i gruppi dell'utente in Linkedin con Javascript

Identificare i gruppi dell'utente in Linkedin con Javascript

Nel precedente articolo avevamo visto come autenticarsi su Linkedin tramite Javascript.

A quelle funzioni la adesso aggiungiamo anche la lista di tutti i gruppi a cui è iscritto l'utente.

Partiremo dal contenuto di questo articolo e aggiungeremo nuove funzioni.

Ricordo che tutto ciò lo facciamo sempre tramite Javascript.

<!DOCTYPE html>
<html>
    <head>
        <title>Meliortrust Linkedin login</title>
        <script type="text/javascript" src="http://platform.linkedin.com/in.js">/*
          api_key: API_KEY
          onLoad: onLinkedInLoad
          authorize: true
          scope: rw_groups
 */</script>
        <script type="text/javascript">
            function onLinkedInLoad() {
                IN.Event.on(IN, "auth", onLinkedInAuth);
            }
            function onLinkedInAuth() {
                IN.API.Profile("me").result(displayProfiles);
                IN.API.Raw("/people/~/group-memberships").result(displayGroups)
            }
            function displayProfiles(result) {
                var member = result.values[0];
                document.getElementById("profiles").innerHTML = '<p id="' + member.id + '">HELLO ' + member.firstName + ' ' + member.lastName + '</p>';
            }
            function displayGroups(result) {
                var groupName = '';
                var groups = result.values;
                for(var i = 0; i < groups.length; i++) {
                    groupName += groups[i].group.name + '<br>';
                }
                document.getElementById("groups").innerHTML = '<p>' + groupName + '</p>';
            }
        </script>
    </head>
    <body>
        <script type="IN/Login"></script>
        <div id="profiles"></div>
        <div id="groups"></div>
    </body>
</html>

La prima differenza riguarda l'aggiunta del parametro scope in fase di richiamo del'SDK.

Poi nella funzione onLinkedInAuth abbiamo aggiunto questa riga:

IN.API.Raw("/people/~/group-memberships").result(displayGroups)

che altro non fa che richiamare i gruppi dell'utente.

In caso di risultato positivo viene richiamata la funzione displayGroups.

Ovviamente pososno essere restituiti più gruppi, quindi dobbiamo ciclare tra i risultati, e appendere tutto nel <div> più sotto.

La cosa migliore da fare per capire come ci viene data la risposta è usare console.log(result) sia in questa funzione che in quella dell'utente.

Così facendo ho capito parecchie cose del modo in cui Linkedin ci risponde (cose che non ho trovato sulla documentazione).

Il mio consiglio è di prendere questo script e fare un pò di debug.

Ciao!