Manejando con gracia InvalidAuthenticityToken excepciones en Rails 4

Acabo de actualizar una aplicación de Rails 3 a Rails 4, y veo aparecer un montón de excepciones InvalidAuthenticityToken. Profundizar parece que es bastante común que nuestros usuarios tengan múltiples pestañas de larga duración abiertas en nuestro sitio. Entonces, creo que lo que está sucediendo es algo como esto: la usuaria Alice tiene tres pestañas abiertas y su sesión expira. Ella vuelve a iniciar sesión en una de las pestañas, que actualiza el token de autenticidad almacenado en su sesión. Luego regresa a una de las otras pestañas abiertas e intenta enviar datos, pero obtiene un error 500 del error InvalidAuthenticityToken que generamos.

Claramente sería bueno hacer algo de manejo de errores para Alice para que no reciba un error 500. Me pregunto sobre las mejores prácticas para este tipo de situación. ¿Cuál sería una buena manera de manejar el envío de Alice desde la pestaña caducada? No quiero expirar la sesión actual, porque eso sería muy molesto desde la perspectiva del usuario ("Isólo log in, you dolt! "). Idealmente, solo quiero que el usuario vuelva a cargar la página, lo que resultaría en la presencia del token de autenticidad correcto en el formulario. ¿O debería estar haciendo algo diferente para que las pestañas de larga duración que ¿Están abiertos los avisos de que la sesión ha expirado y forzar una recarga? Esto probablemente sería subóptimo desde el punto de vista del usuario, porque les gustaba tener esa página lista y fácilmente accesible para seguir haciendo referencia, por lo que la dejaron abierta en el pestaña en primer lugar.

Respuestas a la pregunta(2)

Su respuesta a la pregunta