Все, я новичок в программировании на Facebook.Мой тестовый проект - это простой веб-сайт, который отображает информацию об учетной записи Facebook (только имя и идентификатор) и список альбомов этой учетной записи Facebook.Проблема в том, что после аутентификации я могу получить данные профиля, но не могу получить список альбомов.Вот код для получения информации о профиле:
[FacebookAuthorize(LoginUrl = "~/Account/Login")]
public ActionResult Profile()
{
var fbWebContext = FacebookWebContext.Current;
if (fbWebContext.IsAuthorized())
{
try
{
var fb = new FacebookWebClient(fbWebContext);
var token = fb.AccessToken;
dynamic me = fb.Get("/me");
ViewBag.Name = me.name;
ViewBag.Id = me.id;
ViewBag.AccessToken = token;
}
catch (Exception ex)
{
{
fbWebContext.DeleteAuthCookie();
Session.Clear();
}
return RedirectToAction("Login", "Account");
}
}
return View();
}
, а вот код для получения списка альбомов
[FacebookAuthorize(LoginUrl = "~/Account/Login")]
public ActionResult Album()
{
var fb = new FacebookWebClient(FacebookWebContext.Current);
IDictionary<string, object> albums = fb.Get("me/albums") as IDictionary<string, object>;
dynamic albumList = albums["data"];
foreach (dynamic albumInfo in albumList)
{
if (ViewBag.Albums == null)
ViewBag.Albums = new List<string>();
ViewBag.Albums.Add(albumInfo.id);
}
return View();
}
в вышеприведенном коде, количество элементов в albumList всегда = 0. Можетпожалуйста, помогите мне решить эту проблему?Небольшое замечание: мой тестовый веб-сайт является веб-приложением ASP.Net MVC3, написанным на C #.
Редактировать в ответ на ответ Энди:
На самом деле я установил много разрешений, но все равно не могуполучить список альбомов.Вот код в моем методе OAuth.
var parameters = new Dictionary<string, object>();
parameters.Add("permissions", "user_about_me,offline_access,user_photos,publish_stream");
dynamic tokenResult = oAuthClient.ExchangeCodeForAccessToken(code, parameters);
Обратите внимание, что я пытался заменить "разрешения" на "область действия", но все еще не смог.