Я пытался получить сообщения на стене для определенного пользователя, на этот же вопрос был дан ответ - Как получить сообщения пользователя , но по каким-то странным причинам это не работает для меня.
Я следовал статье в документации к codeplex - Начало работы с веб-сайтом ASP.NET MVC 3
Код 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. Я не совсем уверен, нужно ли мне устанавливать какие-либо разрешения, и если да, то как я могу это сделать?
Обновление:
В контроллере учетных записей я не запрашивал разрешения в методе 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, ошибка в коде Exchange для маркера доступа , но я скачал последний скомпилированный исходный код в ответ на это сообщение