如何使用Meteor执行常见的FB操作?

Che*_*rot 4 facebook-graph-api meteor

使用该accounts-facebook软件包在Meteor中执行常见Facebook操作所需的步骤是什么?我正在尝试获取朋友列表,张贴在墙上,并最终执行其他操作,但我不确定如何继续.

Aks*_*hat 7

更新:对流星0.6.0的轻微修改

您需要使用API​​来帮助您,例如nodefacebook graph api:https://github.com/criso/fbgraph

你需要制作一个包裹.您需要创建一个名为的目录,/packages并在该目录中调用fbgraph.

每个包都需要一个package.js(放在fbgraph目录中).在你package.js可以使用这样的:

Package.describe({
    summary: "Facebook fbgraph npm module",
});

Package.on_use(function (api) {
    api.add_files('server.js', 'server');
});

Npm.depends({fbgraph:"0.2.6"});
Run Code Online (Sandbox Code Playgroud)

服务器端js - server.js

Meteor.methods({
    'postToFacebok':function(text) {
        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();
          //Async Meteor (help from : https://gist.github.com/possibilities/3443021
          graph.post('/me/feed',{message:text},function(err,result) {
              return onComplete(err, result);
          }
          Future.wait(future);
        }else{
            return false;
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

然后登录客户端

客户端js

Meteor.call("postToFacebook", "Im posting to my wall!", function(err,result) {
    if(!err) alert("Posted to facebook");
});
Run Code Online (Sandbox Code Playgroud)

Fbgraph回购:https://github.com/criso/fbgraph

用于请求列表的图形API文档:https://developers.facebook.com/docs/reference/api/

异步(在将数据返回给客户端之前等待来自facebook的回调):https://gist.github.com/possibilities/3443021