J'utilise Meteor / React pour apprendre Facebook Graph API. Je souhaite accéder à la publication des utilisateurs sur la chronologie de Facebook et les afficher à l'écran. Comment cela peut-il être fait?
Avec la guidage de la solution fournie ici [ Comment effectuer des actions de FB communes à l'aide de Meteor? . J'ai essayé le code suivant: serveur.js p> code côté client:
Je m'attends au résultat affiché dans la console latérale du client, car je souhaite montrer aux utilisateurs les messages sur sa chronologie de son / ER, mais je reçois la sortie suivante:
Res, indéfini p> p> meteor.call ("SeePost", fonction (err, résultat) {
if (err) console.log ("erreur", err);
sinon console.log ("res", résultat);
}); code> p>
3 Réponses :
Vous pouvez le faire en utilisant Le code client attend que l'appel à compléter et vous donne les données renvoyées p > attendre code> et
météor.callasync code>
const result = await Meteor.callAsync("seePost");
La fonction qu'il apparaît doit être déclarée avec async code>, telle que
async fonction mysculction () code>
Si vous utilisez des fibres / futur, vous devez retourner quelque chose avec "futur". Cela reviendra quelque chose dans le rappel de l'appel du client. P> P>
Essayez ce code lorsque vous utilisez des fibres, vous devez "attendre" pour la réponse
Meteor.methods({ 'seePost': function () { var graph = Npm.require('fbgraph'); if (Meteor.user().services.facebook.accessToken) { graph.setAccessToken(Meteor.user().services.facebook.accessToken); var future = new Future(); var onComplete = future.resolver(); graph.get('/me/feed', function (err, result) { console.log(result); if (err) { return future.return(false); } else { return future.return(result); } }) return future.wait(); } return false; } });