Ahora, si los usuarios han cerrado sesión debido a la inactividad, esto no es inmediatamente obvio, a menos que, por supuesto, elijan volver a cargar la página. Sin embargo, la mayoría no lo hace. Entonces, si simplemente comienzan a ingresar palabras de búsqueda, simplemente no obtienen nada, porque no están conectados.
Ya tengo una rutina para redirigir a los usuarios a la página de inicio de sesión si no han iniciado sesión. Pero esto no funciona en este caso, porque es la página que genera JSON la que se está redirigiendo, que en realidad no tiene ningún influencia en la página principal.
Además, no puedo ver cómo puedo interactuar directamente con lo que se devuelve; parece que JQuery hace todo el manejo de datos internamente, por lo que realmente no puedo agarrar los datos devueltos y decirle a la página principal que redirija en ese caso.
¿Cómo logro el resultado deseado?
En el lado del servidor, ajax primero verifique la condición de inicio de sesión y, en función de eso, responda como {login: false} algo así, en su función jquery verifique esa respuesta y si login = false, luego redirija usando window.location.