if (!IsPostBack)
{
var auth = new CanvasAuthorizer(fb);
if (!auth.IsAuthorized())
{
var url = auth.GetLoginUrl(new HttpRequestWrapper(Request));
var content = CanvasUrlBuilder.GetCanvasRedirectHtml(url);
Response.ContentType = "text/html";
Response.Write(content);
Response.End();
return;
}
dynamic me = fb.Api("/me");
if (fb != null)
{
FacebookID = fb.Session.UserId;
AccessToken = fb.Session.AccessToken;
}
FacebookApp fbapp = new FacebookApp(AccessToken);
dynamic videos = fbapp.Fql("SELECT vid, owner FROM video WHERE owner IN (SELECT uid2 FROM friend WHERE uid1 = me())");
foreach (dynamic v in videos)
{
// Can't return videos here
}
}
Но при выполнении этого fql нет видео.
Но с этим кодом выше я использую другой fql, такой как:
dynamic fanpages = fbapp.Fql("SELECT page_id, name, pic_big, type, page_url FROM page WHERE page_id IN (SELECT page_id FROM page_fan WHERE uid=me() or uid in (SELECT uid2 FROM friend WHERE uid1=me()))");
foreach (dynamic fan in fanpages)
{
// Can return fan page in here
}
Проблема, я думаю, в AccessToken. Этот AccessToken не может иметь разрешения, когда fql video table, но может иметь разрешение, когда fql фан-страницы.
Кто-нибудь, пожалуйста, помогите мне.
Большое спасибо.