2016-10-21 6 views
0

Ниже приведен мой код для вызова сервлета, который делает недействительным сеанс пользователя и закрывает вкладку браузера. В IE браузер запрашивает у пользователя подтверждение закрыть вкладку. В Chrome он выдает сообщение об ошибке Scripts may close only the windows that were opened by it. Я написал этот код, основываясь на отзывах, которые были заданы на аналогичные вопросы в stackoverflow. Можно ли вызвать мой сервлет для выхода из системы и закрыть вкладку браузера после нажатия кнопки выхода из системы без запроса подтверждения пользователя.Недействительный сеанс и закрытие вкладки браузера при нажатии Logout

<!DOCTYPE html> 
    <html> 
    <head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
    <script> 
    $(document).ready(function(){ 
     $("#mybutton").click(function(){ 
      $.get("/logoutServlet", function(data, status){ 
       // alert("Data: " + data + "\nStatus: " + status); 
      }); 
    window.open('','_self').close(); 
     }); 
    }); 
    </script> 
    </head> 
    <body> 

    <button id="mybutton">Logout</button> 

    </body> 
    </html> 

ответ

1

Вы просто не можете. Но вместо этого вы можете перенаправить пользователя на пустую страницу.

window.location.href = "about:blank"; 
Смежные вопросы