完全关闭浏览器

时间:2009-11-25 08:02:39

标签: browser webbrowser-control

有什么解决方案我怎么能完全关闭浏览器?我需要这个,因为我在其他页面上使用单点登录,并且在该页面上写下只有关闭浏览器才会注销用户。

8 个答案:

答案 0 :(得分:5)

您无法关闭用户浏览器,但如果您可以识别包含会话的Cookie,则可以清除它。如何执行此操作取决于您使用的语言。

在Javascript中,您将在与要清除的Cookie相同的域上运行

var expired = new Date();
expired.setTime(mydate.getTime() - 86400);
document.cookie = "my_session_cookie_name=; expires=" + expired.toGMTString(); 

在服务器端,您可以输出标头来设置或清除Cookie。根据用户的浏览器设置,您可以在第三方域上设置cookie。这是PHP中的一个例子

setcookie ('my_session_cookie_name', '', time() - 86400);

//clear cookie for example.com
setcookie('my_session_cookie_name', '', time()-86400, '/', '.example.com');

答案 1 :(得分:2)

不,你不能。

  

该页面写入只关闭浏览器将注销用户

如果您可以在正确的域(单点登录服务器的域)中运行JavaScript,我打赌您可以通过删除会话cookie来注销用户。

答案 2 :(得分:0)

不能在未经他们许可的情况下强行关闭用户的浏览器。

编辑:即使某些浏览器存在变通方法,但这是一种不好的做法,并被认为是侵入性的。

答案 3 :(得分:0)

Atleast不在Firefox中,否则将是一个很大的可用性问题。

关闭标签时删除Cookie。

答案 4 :(得分:0)

可以关闭通过javascript打开的浏览器,但由于用户打开第一个浏览器,将无法关闭所有浏览器。

你的SSO应该有某种退出功能,它会更好。此功能将清除用户cookie或清除服务器端的会话。

答案 5 :(得分:0)

如果每个SSO站点都有自己的cookie,您可能需要单独将用户从每个SSO站点中注销。希望每个站点都有自己的“登出我”URL,您可以打开一个包含多个iframe的页面到每个SSO站点。

答案 6 :(得分:0)

  

您可以跨域设置它们,但是   取决于中的安全设置   浏览器,他们可能会被阻止,   可能会提示用户确认,或   他们可能会被默默接受。这里的   如何配置Firefox   阻止第三方cookie:   support.mozilla.com/en-US/kb/...

我如何跨域设置它们?

答案 7 :(得分:-1)

非常简单,

只需添加javascript

  <td width="10%"><div align="center"><a href="javascript:window.close() "><font color="#ffffff">Close</font></a></div></td>