Есть ли способ, с помощью которого urlfetch Google App Engine может открывать и поддерживать соединение через Twitter Streaming API? - PullRequest
5 голосов
/ 10 июня 2009

API потокового вещания Twitter говорит, что мы должны открывать HTTP-запрос и анализировать обновления по мере их поступления. У меня сложилось впечатление, что urlfetch от Google не может держать http-запрос открытым в течение последних 10 секунд.

Я подумывал о том, чтобы иметь задание cron, которое опрашивает мою учетную запись Twitter каждые несколько секунд, но я думаю, что Google AppEngine разрешает задания cron только раз в минуту. Однако моему приложению требуется доступ почти в реальном времени к моему твиттеру @replies (желательно с задержкой не более 10 секунд).

Есть ли способ получать обновления в режиме реального времени из Twitter?

Спасибо!

Ответы [ 3 ]

2 голосов
/ 10 июня 2009

К сожалению, вы не можете использовать API urlfetch для "зависания". Все данные будут возвращены после завершения запроса, поэтому, даже если вы сможете держать его открытым произвольно долго, это не принесет вам пользы.

Рассматривали ли вы использование Gnip ? Они предоставляют систему уведомлений «веб-хуки» на основе push-уведомлений для многих общедоступных каналов, включая общедоступную временную шкалу Twitter.

1 голос
/ 20 июля 2012

Может быть возможно использовать Google Compute Engine https://developers.google.com/compute/ для поддержания неограниченных зависающих GET-соединений, а затем вызвать webhook в вашем приложении AppEngine, чтобы доставить данные с виртуальной машины вычислительного механизма туда, где он должен находиться в AppEngine .

1 голос
/ 10 июня 2009

Мне любопытно.

Разве вы не хотите, чтобы это опрашивал твиттер на стороне клиента? Вы опрашиваете свой общедоступный канал? Если это так, я бы децентрализовал работу для клиентов, а не для сервера ...

...