Разработка / тестирование приложений Twitter без хлопот API - PullRequest
7 голосов
/ 03 мая 2009

В настоящее время я работаю над приложением, которое работает с Twitter, но во время разработки / тестирования (особенно тех частей, которые не сильно зависят от реальных данных Twitter), я бы хотел избегать постоянного попадания в API или публикации мусора чириканье.

Есть ли общая стратегия, которую люди используют для облегчения работы с API (кроме кэширования)? Я думал о том, чтобы развернуть свою собственную библиотеку, которая по существу перехватывает исходящие запросы и возвращает ложные ответы, но сначала я хотел убедиться, что ничего не упустил из виду.

Ответы [ 4 ]

11 голосов
/ 03 мая 2009

Я бы, наверное, начал с насмешек над конкретными частями API, которые вам нужны для вашего приложения. Фактически, это может фактически заставить вас придумать более чистый дизайн для вашего приложения, потому что это более или менее требует от вас думать о вашем приложении с точки зрения «что» должно делать, а не «как» это должно делать.

Например, если вы используете API поиска в Твиттере, ваше приложение, скорее всего, не должно заботиться о том, используете ли вы формат JSON или формат Atom. Возможность поиска в Твиттере с использованием заданного запроса и получения результатов представляет желаемую функциональность, поэтому вы должны высмеивать API на этом уровне абстракции. Выходной формат - это просто деталь реализации.

Путем насмешки над API с точки зрения функциональности, а не с точки зрения низкоуровневой реализации, вы можете убедиться, что приложение выполняет то, что вы ожидаете, прежде чем вы действительно подключитесь к Twitter на самом деле. К этому моменту вы уже убедились, что приложение работает как задумано, поэтому остается только написать код для выполнения запросов REST и проанализировать ответы, что должно быть довольно простым, так что вы, вероятно, не будете в конечном итоге В этот момент в Твиттере появилось много ненужных данных.

2 голосов
/ 03 мая 2009

Кэширование, вероятно, лучшее решение. Кроме того, я считаю, что API ограничен 100 запросами в час. Поэтому, возможно, создайте функцию, которая будет считать каждый запрос и, приближаясь к 100, говорит: «ОК, каждые 10 запросов API я буду получать данные. Это не будет трудно установить, вероятно, функция градиента, которая обрезается, когда вы приближаетесь к пределу.

0 голосов
/ 08 мая 2009

Кэширование в базе данных ... Если кеш слишком старый, запросите последние данные через API.

Также подумайте о том, чтобы включить учетную запись вашего приложения в белый список, это позволит вам иметь лимит запросов в 20 000 API в час по сравнению с жалкими 100 (что сделано для пользователя, а не приложения).

http://twitter.com/help/request_whitelisting

0 голосов
/ 03 мая 2009

Я использовал Tweet #, он кешируется и должен делать все, что вам нужно, так как он покрывает 100% API твиттера, а затем немного ...

http://dimebrain.com/2009/01/introducing-tweet-the-complete-fluent-c-library-for-twitter.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...