在.net中获取用户的Facebook壁挂文件

时间:2010-12-09 19:09:28

标签: vb.net facebook-graph-api

我想在我的网站上显示用户的换行和新闻Feed。我怎么能这样做?

有没有办法在不必获得授权令牌的情况下提取Feed?

如果我需要令牌,我该怎么做?

1 个答案:

答案 0 :(得分:2)

正确(我甚至会说“Facebook的条款和条件要求”)这样做的方法是获得authorization token,其中涉及一个弹出式div,询问用户是否他们我想允许您的网站(应用程序)访问他们的信息。

你可以customize the level of access you'd need,只会提示他们。通过接受,您将能够访问其Cookie中的令牌。有了该令牌和您的应用程序ID以及您的“应用程序秘密”,您可以向Facebook Graph API请求您想要的任何数据。 (您使用应用程序密钥来解密用户的cookie,从中获取访问令牌以传递给Graph API请求。)

它不仅仅是刮擦墙壁并显示它,您将负责抓取各个数据并组织显示。

修改

在回复您的评论时,here是在.NET中使用Cookie的快速教程。谷歌搜索“ASP .NET cookies”或“VB .NET cookies”也会产生更多。有一个示例(在PHP中)here演示了如何解密cookie。我还没有找到任何.NET示例,但这里的代码非常简单。 Cookie名称为“fbs_”+您的应用程序ID。

它似乎是一个分隔的字符串,所以只需在调试器中读取整个内容并查看值是什么样的。你想要的值似乎被称为“sig”(但同样,调试以确保),看起来他们正在使用MD5哈希来获取它。您可以阅读PHP代码中md5()函数正在执行的内容here,并且应该很容易找到.NET模拟函数。

获得访问令牌后,由您决定如何获取信息。我建议在JavaScript中完成这一切只是为了将整个内容卸载到客户端的浏览器,更不用说你在网上找到的大多数样本(例如在Facebook的API文档中)将使用JavaScript。但如果您想在服务器端执行此操作,Facebook's C# SDK将会提供一些帮助。您基本上将所需的令牌和图谱API路径传递给它,并返回包含所有数据的JSON对象。