2012-06-20 161 views
0

我们有一个网站,其中用户可以将信息从我们的网站发布到他们的facebook墙上。我正在使用Facebook图形API的streampublish来完成这项任务。

因此,流程如下所示:
a。用户点击'发布此链接到Facebook'按钮
b。如果用户未登录Facebook,则会自动显示一个登录弹出框。
c。登录成功后,用户将显示“Post to Wall”弹出框。 d。用户发布消息到墙上。
Facebook Streampublish和用户详细信息

所有上述工作正常。但是我的要求是,在发布流数据之后,我需要根据他们的Facebook登录名获取用户的电子邮件,名字和姓氏,并将其保存到我们的数据库中。有没有人对如何获取这些信息有任何建议?

网站使用Javascript,ASP.Net和C#

编辑内置: 感谢您的答复。
我目前使用以下语法张贴到壁

FB.ui({方法: 'stream.publish',
消息:userMessage1,
附件:附件1,
action_links:actionLinks1,
user_message_prompt:messagePrompt1,
target_id:targetId1,
actor_id:actorId1},FBresponse);

我可以通过FBresponse回调函数获取用户对象的详细信息吗?在使用Firebug的时候,响应对象只包含post_id属性

回答

1

如果您有权限在用户的墙上发布,则应该有用于该用途的有效访问令牌。您可以查询Facebook Graph API /me对象以获取该信息。

+0

名字和姓氏都没问题,但您需要额外的电子邮件许可。 –

+0

不,您需要进行单独的API调用以获取您要查找的信息。当你在'FBresponse'回调中获得'post_id'时,你可以触发它。 – cpilko

+0

谢谢你们。在FB.UI回调函数中,我调用了FB.getLoginStatus,然后调用FB.api('/ me',function(response){});这给了我用户的详细信息.. – jack