2010-03-12 17 views
7

Estoy usando la API de Twitter (a través de TweetSharp) y me preguntaba si es posible actualizar automáticamente la página de la API para que todos los usuarios vean la actualización. Si es así, ¿es posible dar un paso más si solo se actualiza parcialmente la página, de modo que solo se actualiza el cambio relevante en lugar de la página completa?página de actualización de Twitter a través de API

Gracias por cualquier ayuda

+0

¿Está Visualización de información de Twitter en una página asp.net? – Foole

+0

No, simplemente estoy usando la aplicación (tanto asp.net como la aplicación de escritorio) para actualizar la página de Twitter. – XSL

+0

Estoy escribiendo una aplicación de Twitter con TweetSharp, así que probablemente pueda ayudar. ¿Desea publicar tweets en Twitter para un grupo de usuarios o leer tweets para un grupo de usuarios y luego actualizar la página si el último tweet cambia? ¿O algo mas? – amelvin

Respuesta

1

Creo que entiendo su pregunta, que desea mostrar un grupo de usuarios y su último tweet, pero siga revisando si su último tweet ha cambiado y actualiza la pantalla cuando el usuario publica un tweet?

Si es así, la respuesta es que debe llamar al twitterapi de manera asincrónica de vez en cuando y desplegar el último estado (tweet) para cada usuario, y si es uno nuevo, utilice ajax para actualizar la parte de la pantalla con el estado anterior (tweet) en él.

En TweetSharp si usted tiene una lista de amigos, se puede tirar en su último tweet con algo como:

string profileImageUrl = String.Empty; 
    string name = String.Empty; 
    string statusText = String.Empty; 
    string createdAt = String.Empty; 
    string screenName = String.Empty; 

    foreach (TwitterUser friend in friends) 
    { 
     try 
     { 
      profileImageUrl = String.IsNullOrEmpty(friend.ProfileImageUrl) ? "" : friend.ProfileImageUrl; 
      name = String.IsNullOrEmpty(friend.Name) ? "" : friend.Name; 
      statusText = (friend.Status == null || friend.Status.Text.Length == 0) ? "unknown" : friend.Status.Text; //stops nullreferenceexception on instance 
      createdAt = String.IsNullOrEmpty(friend.CreatedDate.ToString()) ? "" : friend.CreatedDate.ToString(); 
      screenName = String.IsNullOrEmpty(friend.ScreenName) ? "" : friend.ScreenName; 
     } 
     catch (NullReferenceException) 
     { 
      profileImageUrl = ""; 
      name = "unknown"; 
      statusText = "unknown"; 
      createdAt = ""; 
      screenName = "unknown"; 

para que pueda mostrar en la pantalla inicial.

A continuación, utilice jquery (o javascript) periódicamente hit a web service that reads the twitter api y luego utilice los datos devueltos para actualizar el último tweet si ha cambiado.

Avíseme si tengo el extremo equivocado de la vara.

EDIT:

Un ejemplo del uso Tweetsharp la publicación de un nuevo tweet a Twitter es:

var query = FluentTwitter.CreateRequest().AuthenticateAs(username,password).Statuses().Update("Posting status on StackOverflow").AsJson(); 
+0

Hola, Gracias por la ayuda. No puedo probar el código atm, pero ¿cambiaría tu código la página de Twitter? Eso es lo que pretendo hacer. Entonces, si un usuario actualiza algo en mi aplicación, puede ver la actualización de la página de Twitter.com automáticamente a través de una devolución parcial – XSL

+0

@superexsl He agregado un ejemplo al publicar una actualización en Twitter usando Tweetsharp – amelvin

0

que no usan este archivo DLL, pero yo escribo una, y la API de Twitter espera que llame de nuevo - no hay una actualización que yo sepa. Si este dll le permite consultar desde una fecha, entonces eso es posible y probablemente sea un parámetro para la llamada. Espero que esto ayude un poco

+0

Hola, no me importa saltear la API para este bit y simplemente crear mi encabezado POST. ¿Qué método debo probar y llamar usando mi encabezado personalizado? Gracias por la ayuda – XSL

0

Si está utilizando ASP .NET podría considerar el uso de AJAX con el control UpdatePanel. Probablemente sea la forma más sencilla de obtener lo que necesita con ASP .NET

+0

Hola, ¿Todavía no entiendo cómo se usa un UpdatePanel para actualizar la página de Twitter? – XSL

+0

Creo que entendí mal lo que estabas haciendo. ¿Estás usando una aplicación de escritorio para enviar a Twitter pero no para leer de ella? ¿No está utilizando la API de Twitter para mostrar información en una página ASP.NET que ha escrito? Si espera actualizar una ventana del navegador que está separada de su aplicación de escritorio desde su aplicación de escritorio, necesitará algunas API en el navegador y no en Twitter. – Justin

+0

Hola, estoy creando una aplicación de escritorio y una página ASP.NET. No me importa si esto no funciona para la aplicación de escritorio. No quiero actualizar mi página, quiero actualizar la página de Twitter en sí.Al igual que cuando recibes un nuevo tweet, muestra automáticamente el nuevo tweet sin refrescar la página. Me pregunto si puedo hacer una llamada AJAX para que mi aplicación lo haga. (por ejemplo, cuando actualizo la imagen de perfil, debería cambiar sin una actualización en la página de Twitter real) gracias – XSL

Cuestiones relacionadas