【发布时间】:2011-04-19 03:16:53
【问题描述】:
我试图检索特定用户的墙贴,类似的问题已在此处得到回答 - How to get posts of user,但由于某些奇怪的原因,它对我不起作用。
我关注了 codeplex 文档中的文章 - Getting Started with an ASP.NET MVC 3 Website
AccountController 代码类似于https://gist.github.com/899052,下面是尝试获取帖子的操作方法
var facebookId = long.Parse(User.Identity.Name);
var user = this.repository.Get(facebookId);
var fb = new FacebookWebClient(user.AccessToken);
dynamic result = fb.Get("me/feed");
但我总是在 result.data 中得到一个空数组。我不太确定,是否需要设置任何权限,如果需要,我该怎么做?
更新:
在 Account Controller 中,我没有在 LogOn 方法中请求权限,下面是它可以完成的方式,它解决了问题
public ActionResult LogOn(string returnUrl)
{
var oAuthClient = new FacebookOAuthClient(FacebookApplication.Current)
{
RedirectUri = GetOAuthCallbackUri()
};
Dictionary<string, object> parameters = new Dictionary<string, object>();
parameters.Add("state", returnUrl);
parameters.Add("scope", "offline_access,read_stream,user_photos,user_videos,publish_stream");
var loginUri = oAuthClient.GetLoginUrl(parameters);
return Redirect(loginUri.AbsoluteUri);
}
在此之前,我收到了5.0.9 error on Exchange code for access token 中提到的错误,但我下载了最新的源代码并按照该帖子中的回答进行编译
【问题讨论】:
标签: facebook-c#-sdk