Pregunta

Actualmente estoy trabajando en una aplicación que funciona con Twitter, pero al desarrollar / probar (especialmente aquellas partes que no dependen en gran medida de datos reales de Twitter), me gustaría evitar golpear constantemente la API o publicar basura. tweets.

¿Existe una estrategia general que las personas usan para facilitar el uso de la API (almacenamiento en caché)? Estaba pensando en rodar mi propia biblioteca que esencialmente interceptaría las solicitudes salientes y devolvería respuestas falsas, pero quería asegurarme de que no me faltara nada obvio primero.

¿Fue útil?

Solución

Probablemente, comenzaría por burlarme de las partes específicas de la API que necesita para su aplicación. De hecho, esto puede obligarlo a idear un diseño más limpio para su aplicación, ya que más o menos requiere que piense en su aplicación en términos de "qué". debería hacer en lugar de " cómo " debería hacerlo.

Por ejemplo, si está utilizando la API de búsqueda de Twitter, lo más probable es que a su aplicación no le importe si está utilizando la opción de formato JSON o Atom. La capacidad de buscar en Twitter utilizando una consulta determinada y obtener resultados de vuelta representa la funcionalidad que desea, por lo que debe burlarse de la API en ese nivel de abstracción. El formato de salida es solo un detalle de la implementación.

Al burlarse de la API en términos de funcionalidad en lugar de en términos de detalles de implementación de bajo nivel, puede asegurarse de que la aplicación haga lo que espera que haga, antes de conectarse realmente a Twitter de verdad. En ese momento, ya ha verificado que la aplicación funciona según lo previsto, por lo que lo único que queda es escribir el código para hacer las solicitudes REST y analizar las respuestas, lo que debería ser bastante sencillo, por lo que probablemente no terminará golpeando a Twitter con una gran cantidad de datos basura en ese momento.

Otros consejos

El almacenamiento en caché es probablemente la mejor solución. Además de eso, creo que la API está limitada a 100 solicitudes por hora. Entonces, tal vez haga una función que cuente cada solicitud y, a medida que se acerca a 100, dice: OK, cada 10 solicitudes de API extraeré datos. No sería difícil de configurar, probablemente una función de degradado que se reduce cuando se acerca al límite.

He usado Tweet #, se almacena en caché y debería hacer todo lo que necesita, ya que tiene el 100% de la API cubierta de Twitter y algo más ...

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

Cosas de caché en una base de datos ... Si el caché es demasiado antiguo, solicita los últimos datos a través de la API.

También piense en incluir su cuenta de aplicación en la lista blanca, le permitirá tener un límite de solicitud de API de 20,000 por hora frente a los 100 míseros (que se hacen para un usuario y no para una aplicación).

http://twitter.com/help/request_whitelisting

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top