2010-02-04 15 views
6

la API de Twitter este valor para la cuenta 'image_url' Twitter: http://a1.twimg.com/profile_images/75075164/twitter_bird_profile_bigger.pngHotlinking Imágenes de avatar de Twitter?

En mi aplicación web cliente de Twitter, estoy considerando hotlinking la versión HTTPS de los avatares que se aloja en Amazon S3: https://s3.amazonaws.com/twitter_production/profile_images/75075164/twitter_bird_profile_bigger.png

Cualquier mejores prácticas que me desanimarían a hacer esto? ¿Las aplicaciones de terceros de Twitter suelen alojar sus propias copias de avatares?

EDITAR: Para aclarar, necesito utilizar HTTPS para las imágenes porque mi aplicación web usará una conexión HTTPS y no quiero que mis usuarios reciben avisos de seguridad de su navegador sobre la página que contiene algún contenido que no es autenticado Por ejemplo, se sabe que Firefox se queja de contenido mixto http/https.

Mi problema es averiguar si el enlace directo de las URL https está prohibido por Twitter, ya que estas URL no son "públicas" desde su API. Los obtuve mediante el análisis de su fuente HTML de cliente web cuando estoy conectado a mi cuenta de Twitter en HTTPS.

Respuesta

5

¿Está pensando en almacenar la URL de la imagen en su aplicación o recuperarla para el usuario cuando sea necesario?

Si es la última opción, entonces no veo un problema con la vinculación en caliente de las imágenes. Si está almacenando la ubicación de la url de la imagen en su propio sistema, entonces veo que tiene enlaces rotos cada vez que cambian las imágenes (estoy seguro de que cambiarán las URL en algún momento en el futuro).

Editar

Ok, ahora veo su dilema. Revisé los documentos de la API y parece que no hay mucho en términos de poder obtener imágenes servidas en HTTPS u obtener la URL de la imagen de Amazon S3. Posiblemente podría escribir un controlador en su propio servidor que esencialmente cachearía & para volver a servir la imagen HTTP como HTTPS, pero eso implica una carga innecesaria en sus servidores. A falta de eso, no he encontrado una mejor solución. GL

+0

Ver la edición sobre HTTPS. Estoy planeando recuperarlo como se requiere y reemplazarlo dinámicamente con las URL de HTTPS AmazonS3. – Franck

1

¿Por qué le gustaría copiar la imagen a su propio espacio web? Esto aumentará el costo del ancho de banda y obtendrá problemas de coherencia.

Usa la URL que te da la API.

Veo que es posible que desee almacenar en caché la URL que la API devuelve durante algún tiempo para reducir la cantidad de llamadas a la API.

Si está escribiendo algo así como una aplicación de iPhone, tiene sentido almacenar en caché la imagen localmente (en el teléfono), para evitar el tráfico web por completo, pero reemplazar una URL con otra URL no debería marcar la diferencia (asumiendo que el servidor de imágenes de Twitter funciona de manera confiable).

¿Por qué quieres HTTPS?

+0

Ver mi edición sobre HTTPS. Desearía poder usar directamente la URL que me proporciona la API, pero no puedo porque es HTTP. Creo que tienes razón, el almacenamiento en caché no es una buena idea para esto. – Franck

2

las cosas parecen actualizadas desde entonces.

favor marque: https://dev.twitter.com/docs/user-profile-images-and-banners

La plantilla ruta SSL habilitado una imagen de perfil para se indica en las profile_image_url_https. La tabla anterior muestra cómo aplicar las mismas técnicas de selección de variantes a las imágenes basadas en SSL.

Cuestiones relacionadas