Lavorare con facebook API da node.js è molto semplice, creare un modulo (ad esempio: facebook.js
)
facebook.js
var https = require('https');
exports.getFbData = function(accessToken, apiPath, callback) {
var options = {
host: 'graph.facebook.com',
port: 443,
path: apiPath + '?access_token=' + accessToken, //apiPath example: '/me/friends'
method: 'GET'
};
var buffer = ''; //this buffer will be populated with the chunks of the data received from facebook
var request = https.get(options, function(result){
result.setEncoding('utf8');
result.on('data', function(chunk){
buffer += chunk;
});
result.on('end', function(){
callback(buffer);
});
});
request.on('error', function(e){
console.log('error from facebook.getFbData: ' + e.message)
});
request.end();
}
Ora, nel codice importare il modulo di facebook (var facebook = require('./facebook.js');
) e usalo come qui:
facebook.getFbData('USER_ACCESS_TOKEN', '/me/friends', function(data){
console.log(data);
});
getFbData()
è una funzione generica, puoi chiamarla con il tuo percorso di richiesta api (ad esempio '/ me/amici'), passare lo access token
dell'utente corrente e una funzione di callback da chiamare quando i dati sono pronti.
Funziona come una magia! grazie! –
posso avere amici e amici in comune? allora come? – learner
Questo ha funzionato alla grande per me. È importante capire che 'getFbData' restituisce una stringa. È quindi possibile analizzarlo su json con 'var json = JSON.parse (responseData);' – toddg