Я выполняю следующий FQL-запрос, используя javascript api:
FB.api({
method: 'fql.multiquery',
queries: {
'query1': 'SELECT source_id, actor_id, target_id, message, attachment, permalink, description, type, created_time FROM stream WHERE source_id IN (SELECT target_id FROM connection WHERE source_id=me() AND is_following=1) AND is_hidden = 0 AND type = 80 AND strpos(attachment.href, "youtu") >= 0 AND created_time < ' + unix_time,
'query2': 'SELECT uid, name, profile_url, pic_square FROM user WHERE uid IN (SELECT actor_id FROM #query1)'
}
},
function(response) {
console.log(response);
};
Предполагается, что все видео YouTube будут возвращены в текущем фиде пользователей и разрешены повторные запросы, указав unix_time (при первом запуске это, по сути, NOW()
, в противном случае это самое старое время статуса); что он делает, глючит:
- без установки
LIMIT
(по запросу1): после ~ 3 запросов возвращаются пустые результаты
LIMIT 100
или более (по запросу1): результаты возвращаются, но последующие результаты пусты
- при
created_time < NOW()
возвращаются результаты (по нескольким запросам); в противном случае проблема сохраняется (created_time <
время получения самого старого статуса)
Ошибки не возвращаются. У меня есть права * read_stream *. Я попытался найти связанную ошибку, но нашел только те, что FQL не возвращает все статусы.