Estoy trabajando en una web app.
Dicha web app trabaja con Twitter. Todo funciona perfectamente, ya que después de programarlo lo he comprobado todo una y otra vez.
Pero hay un problema que no encuentro solución en la propia documentación de Twitter.
El problema es que a la hora de recoger los datos del usuario de la BD, puede suceder que el usuario haya cambiado esos datos en Twitter y en la BD los datos queden por lo tanto desactualizados.
Esto no sería un problema si esos datos no los guardara en la BD y los utilizara simplemente para "decorar y aportar datos al usuario en el front-end", pero necesariamente esos datos tienen que guardarse en la BD ya que el administrador de la web tendrá que poder verlos.
Me refiero a la imagen y el screen_name. Los que nunca van a cambiar son las claves de acceso y el id_twitter, pero datos como el screen_name, name y la imagen los puede alterar el usuario cuando se le plazca y Twitter, según he visto en la documentación, no da solución a este problema accediendo a un object de forma genérica y que este ya contenga los nuevos datos.
Ante este problema, he pensado que podría actualizarlos de dos maneras:
1) Cuando el usuario se registre se le guardan los datos y cuando se vuelva a conectar a la web app los datos se actualicen junto con su identificación.
2) Cuando el administrador esté viendo los datos de los usuarios tenga la opción de presionar un botón y así actualizar los datos del usuario haciendo una petición a Twitter y junto con esta opción en cada paginación de la lista de usuarios en la web app ir actualizando los datos de los usuarios por cada página.
Esto inevitablemente va a hacer que la web app salga perjudicada en cuanto a velocidad, pero no se me ocurre otra forma de hacerlo.
Entonces ¿AJAX es la mejor opción o alguien conoce otra forma de actualizar estos datos y que desconozco?