URL de un enlace a Twitter para un tweet específico


87

Tengo algo de Javascript que usa la API de Twitter para obtener tweets. Analizo los datos y uso jQuery para generar HTML para el DOM.

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

Estoy generando una etiqueta a con un href. La URL tiene el formato:

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

donde el contenido entre llaves son datos reales extraídos del tweet (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í, estaba haciendo algo mal, no estaba extrayendo el ID de la cadena. Culpa mía. Perdón por el ruido.
Zhami

Respuestas:


155

https://twitter.com/statuses/IDDeberia trabajar.
redirigirá al estado necesario.


31
Esto no funciona en dispositivos móviles, use el formulario más largo si desea un enlace que se pueda abrir desde el móvil: twitter.com/twitter-user-screen-name/status/tweet-id-str
UKatz

2
@UKatz lamentablemente ese enlace parece roto :(
clapas

1
@clapas Creo que es solo una URL de ejemplo, la sustituirías twitter-user-screen-namey tweet-id-strcon los valores apropiados para un enlace que funcione.
Thomas Foster

Esto funciona en el navegador de la computadora. Sin embargo, si está utilizando un dispositivo móvil, el servidor de Twitter lo redirigirá automáticamente a https://mobile.twitter.com/statuses/ID, lo que conduce a una página de error. Entonces, la solución general sigue siendo https://twitter.com/{twitter-user-id}/status/{tweet-status-id}.
Owen Zhao

Esto también falla en MacOS navegadores yoiu necesitan thge twitter-user-id como por móvil
mmmmmm

52

Desafortunadamente, todas las respuestas proporcionadas hasta ahora se basan en una redirección HTTP.

El enlace directo tiene el formato: https://twitter.com/i/web/status/ {tweet-status-id}


2
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 preguntas ... nada como dejar huérfanos todos tus enlaces por el capricho de un usuario ...). Dicho esto, ¿alguien sabe si esto es "compatible" ... parece hacky ...
nokturnal

1
Esto también es lo que utiliza Twitter cuando coloca la URL dentro del tweet (API de transmisión). Muy fácil sin construir la URL basada en UserID.
Maziyar

46

FYI: id_str es la variable a la que necesita llamar en lugar de id

id_str debe tomarse del objeto de tweet y reemplazarse en https://twitter.com/statuses/[id_str]


2
Me tomó un momento darse cuenta de eso te refieres id_strdebe ser llevado desde el objeto tweet y ha introducido como el ID de la respuesta de sagivo:https://twitter.com/statuses/[id_str]
Dominic

1
Esto solo es necesario para JavaScript y otros entornos que no admiten números enteros de 64 bits
chribsen



3

Lo he probado. Funciona bien: - Web: https://twitter.com/statuses/ID - Móvil && Web: https://twitter.com/User_ID/statuses/Tweet_ID

Espero que te sea de ayuda.


@ seyfi-dertli answer incluye dispositivos móviles pero también funciona para computadoras de escritorio.
Leopold Joy

¿Lo has probado todavía ??? Si no tiene id_user, solo use id_tweet con web. Y twitter.com/User_ID/statuses/ID lo hará exactamente con todos.
Kiều Văn Thái

La solución de @Jeff Puckett me funciona tanto en la web como en dispositivos móviles.
Leopold Joy
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.