从JavaScript更改浏览器首选项

时间:2009-01-24 10:36:31

标签: javascript cookies

我遇到了Cookie问题。如果浏览器禁用了cookie,cookie将被拒绝。有没有办法在客户端的浏览器上启用与Internet Explorer,Firefox,Opera和Chrome兼容的cookie?

7 个答案:

答案 0 :(得分:9)

如果用户选择禁用cookie,您可以覆盖该选择? 最好的办法是通知用户他们需要为您的脚本/网站启用cookie才能工作,并提供指向如何操作的一些说明的链接。
或者找到一种不同的方式来实现你想要做的事情

答案 1 :(得分:3)

如果可能的话,这将是一个安全漏洞。所以不,这是不可能的。

答案 2 :(得分:3)

我不知道一个,如果有一个人会感到惊讶 - 由于安全原因(其中包括)出于安全原因而关闭cookie,因此允许该网站重新启用它们将是一个安全问题。

您可以做的是在您的应用中编写一些逻辑以检查Cookie:

第一

set a cookie called 'test';
redirect the user to http://wherevertheywere?cookiecheck=1

然后,包括这样的逻辑:

if the querystring contains cookiecheck=1:
  if the 'test' cooke is set
    cookies are working - do whatever you need to do.
  else
    redirect the user to a special page on your site explaining that they need to enable cookies to use the site. This can include browser detection to give them relevant instructions,

答案 3 :(得分:2)

如果浏览器未启用或支持cookie,您应该让您的软件使用另一种方法来保持页面到页面的会话。您可能必须包含会话密钥作为URL参数。只需确保您具有积极的会话密钥验证。根据您的语言和环境,可能已经有这样做的设施,不会增加很多开发开销(PHP $ _SESSION,一个)。

答案 4 :(得分:0)

我认为没有办法做到这一点。

希望没有办法做到这一点。

如果用户禁用了cookie,则有理由这样做并重新启用它们应作为安全漏洞提交

答案 5 :(得分:0)

这可能是可能的,但是在这么多版本中有这么多浏览器,你很难覆盖合理数量的场景。

此外,如果用户已禁用cookie,则为用户启用它们并使用它们将对其计算机造成犯罪干扰。

答案 6 :(得分:0)

认为这可以帮助任何人,在某些浏览器上,您可以使用以下方法检查cookie是否已启用:

if(navigator.cookieEnabled)