Реализация пакетного запроса коала для списка вызовов API
Я хочу найти все каналы с комментариями, а также изображение профиля пользователя, который прокомментировал сообщения. Я обнаружил, что это можно сделать с помощью пакетного запроса. Теперь я делаю так, что запускает много запросов API.
@facebook = FacebookToken.find_by_id(token.id)
@graph = Koala::Facebook::API.new(@facebook.access_token)
@results = @graph.get_connections("me", self.content)
@results.each do |post|
post['comments']['data'].each do |comment|
commnentor_image = @graph.get_picture(comment["from"]["id"])
end
end
Как я могу получить их в один пакетный запрос, чтобы он дал мне все сообщения с комментариями с изображением комментатора.
Спасибо
1 ответ
Пакетный запрос определенно ускорит ваши запросы, но я бы посоветовал взглянуть и на FQL - документация FB гласит, что мультизапрос FQL даже быстрее, чем пакетные запросы! А еще лучше, вы можете группировать ваши FQL мультизапросы....
Вы можете попробовать это для партии (см. Коала Wiki для получения дополнительной информации):
@graph.batch do |batch|
r = batch.get_connections("me", self.content)
r.each do |post|
post['comments']['data'].each do |comment|
commnentor_image = @graph.get_picture(comment["from"]["id"])
end
end
Проверьте документы FQL для получения дополнительной информации...
Для начала:
@graph.fql_multiquery(SELECT .....your FQL Query)