Tengo una página ASPX que, cuando se envía a una nueva pestaña, inicia un proceso del lado del servidor. A veces, el proceso tarda demasiado y un usuario cierra la pestaña en la que se está ejecutando la página. Sin embargo, el proceso continúa ejecutándose y eso crea un gran problema. Mi pregunta es por qué el proceso continúa ejecutándose y cómo puedo eliminarlo cuando la pestaña está cerrada. Tengo un código en el código detrás donde puedo matar el proceso, simplemente no puedo encontrar una forma de ejecutarlo. Por favor ayuda. Se acerca el lanzamiento. Cerrar el navegador realmente ayuda.
Gracias
código para detectar evento de cierre de pestaña:
window.addEventListener('beforeunload', function (e) { e.preventDefault(); e.returnValue = ''; ... execute server code });No se detecta el evento.
Si tiene una forma de cancelar el proceso en el back-end, lo mejor que puede hacer es usar los eventos de JavaScript onunload y onbeforeunload para detectar cuándo el usuario cierra una pestaña y luego enviar una solicitud para finalizar el proceso.