FQL Query для получения фотографий работает на новых учетных записях Facebook, но не на старых - PullRequest
0 голосов
/ 30 марта 2012

Когда я ввожу запрос ниже, я получаю объект Ilist со всеми фотографиями в альбоме

"SELECT pid, src_small, src_big FROM photo WHERE aid = '100003240429199_12493' "

Когда я ввожу этот запрос ниже, я получаю 0 результатов.

"SELECT pid, src_small, src_big FROM photo WHERE aid = '730676042_444686' "

Я тяну обложку для альбома.Вот код:

var query = string.Format("SELECT pid, src_small, src_big FROM photo WHERE aid = '{0}' ", usrid + "_" + albid);
var result2 = (IList<object>)fb.Query(query);
string hold = "", pid = "", small = "", big = "";
foreach (object g in result2)
{
   hold = g.ToString();
   string[] sub = hold.Split(',');
   pid = sub[0].Replace("{\"pid\":\"", "");
   pid = pid.Replace("\"", "");

   small = sub[1].Replace("\"src_small\":\"", "");
   small = small.Replace("\"", "");

   big = sub[2].Replace("\"src_big\":\"", "");
   big = big.Replace("\"}", "");
   th = new FolderExplorer.ThumbNail(usrid + "_" + albid, big, small);
   thmbs.Add(th);
   break;
}
}

Почему запрос не работает со старыми учетными записями Facebook (более короткие userId) - я пробовал несколько учетных записей, и результаты были согласованы.

1 Ответ

0 голосов
/ 02 апреля 2012

Моя учетная запись Facebook является более старой, и в идентификаторах моих альбомов нет подчеркивания. Насколько я знаю, вы не можете сгенерировать идентификатор альбома на основе их идентификатора пользователя.

Вы бы лучше запустили такой запрос, чтобы получить все обложки для альбома каждого пользователя

fql?q=SELECT pid, src_small, src_big FROM photo WHERE object_id in (select cover_object_id from album where owner = me())
...