2011-04-13 17 views
70

tengo algo de JavaScript que utiliza la API de Twitter para obtener los tweets. Analizo los datos y uso jQuery para generar HTML para el DOM.URL para un enlace a Twitter por un tweet específica

Un aspecto de lo que quiero mostrar es un enlace "Ver este tweet" - sí, suena tonto, pero le permite a un usuario obtener una URL para un tweet específico.

Estoy generando una etiqueta a con un href. La URL es de la forma:

http://twitter.com/{twitter-user-id}/status/{tweet-status-id} 

donde el contenido entre llaves son datos reales extraídos del pío (no, no estoy incluyendo las llaves). Por ejemplo:

http://twitter.com/Atechtrader/status/57432099984130050 

Lo que sucede en la operación es que esto funciona para algunos tweets, pero no para otros. Para los que fallan, el servidor de Twitter responde con contenido que dice que la página solicitada no existe.

¿Estoy haciendo algo mal?

+1

Sí, yo estaba haciendo algo mal - yo no estaba extrayendo el ID de cadena. Mi error. Perdón por el ruido. – Zhami

Respuesta

33

FYI: id_str es la variable que necesita llamar en lugar de Identificación del

+0

gracias! realmente util. – victorkurauchi

+1

me tomó un momento darme cuenta de que quiere decir que 'id_str' debe tomarse del objeto tweet y debe ingresarse como ID de la respuesta de sagivo:' https://twitter.com/statuses/ [id_str] ' – Dominic

+1

** Esto es solo necesario para JavaScript ** y otros entornos que no admite enteros de 64 bits – chribsen

118

https://twitter.com/statuses/ID debería funcionar.
redirigirá al estado necesario.

+1

Perfecto, eso es mucho más simple, y funciona muy bien para mí, gracias. – Markavian

+21

Esto no funciona en dispositivos móviles, use la forma más larga si desea un enlace que se puede abrir desde un dispositivo móvil: http://twitter.com/twitter-user-screen-name/status/tweet-id-str – UKatz

+0

@ UKatz desafortunadamente ese enlace parece roto :( – clapas

7

Usted puede utilizar como:

http://twitter.com/itdoesnotmatter/status/[YOURID]

Twitter Redirect basado en el ID de estado no nombre de usuario.

funciona para escritorio y móviles.

+0

Gracias , Tuve problemas en Mobile con https: // twitter.com/statuses/[id_str], pero su solución funciona en dispositivos móviles;) –

+3

ya no funciona – TimRich

10

Desafortunadamente, todas las respuestas proporcionadas hasta ahora se basan en un redireccionamiento HTTP.

El enlace directo es de la forma: {https://twitter.com/i/web/status/ pío-estado-id}

+1

esta es la única solución que funciona para ambos sin tener que proporcionar explícitamente el nombre de usuario (que es volátil si me preguntan ... nada como orfanar todos sus enlaces por capricho de un usuario ...). Dicho esto, ¿alguien sabe si esto es "compatible" ... parece hacky ... – nokturnal

+0

Esto es también lo que Twitter usa cuando pone la URL dentro del tweet (API de transmisión). Muy fácil sin construir la URL basada en el ID de usuario. – Maziyar

-1

He probado. Es un trabajo bueno: - Web: https://twitter.com/statuses/ID - Mobile & & Web: https://twitter.com/User_ID/statuses/Tweet_ID

espero que sea útil para usted.

+0

@ seyfi-dertli answer incluye móvil pero también funciona para escritorio. –

+0

¿Has probado aún? Si no tiene id_user, solo usa id_tweet con web. Y https://twitter.com/User_ID/statuses/ID exactamente con todos. –

+0

La solución de @Jeff Puckett funciona para mí tanto en la web como en dispositivos móviles. –

Cuestiones relacionadas