单页面判断浏览器是否接受 Cookies

2016-01-29 18:40 3 1 收藏

单页面判断浏览器是否接受 Cookies,单页面判断浏览器是否接受 Cookies

【 tulaoshi.com - ASP 】

 

在 asp 应用中,经常用到 Session 对象来保存用户临时私有数据,而 asp 的 Session 对象是依赖于浏览器的 Cookie 的,如果用户出于安全原因或者无意中关闭了 Cookie 选项,则 asp 将无法正确识别用户,最终导致 Session 对象不能正常使用。
 
要正确执行以后的程序,就要先识别客户程序是否接受 Cookie,然而浏览器并没有提供识别 Cookie 是否关闭的方法,这样就需要我们自己来想办法进行测试。
 
于是很多开发人员就纷纷用自己的办法来测试浏览器的 Cookie 状态,最常见的方法是在一个页面里面送出一个 Cookie,然后在另一个页面中测试此 Cookie 是否存在。这样以来,我们就需要两次 asp 请求。
 
我这里介绍的是一种结合服务器脚本与客户端脚本,一次测试浏览器状态的方法。
 
在 NetBox 第一次初始化 asp 程序时,将分配一个新的 Session 对象,并向客户端送出一个以 Application.ApplicationID 为名称的 Cookie,浏览器如果接受 Cookie,则下次访问时将回送此 Cookie,NetBox 服务器在接受到此 Cookie 以后,将选用其指定的 Session 对象作为此次 asp 请求的 Session 对象使用,以保证 Session 对象针对具体用户的唯一性和持久性。
 
由此我们知道,可以通过判断浏览器是否接受了 Application.ApplicationID 为名称的 Cookie 来判断能否继续下面的程序。而判断浏览器中是否含有某个 Cookie,则可是使用浏览器的 cookie 对象来完成。下面这段代码就是测试浏览器是否接受了 NetBox 的 Session:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/asp/)

<html
<body
<Script language="javascript"
if(document.cookie.search("<%=Application.ApplicationID%=") == -1)document.write("Not ");
</ScriptAllow.
</body
</html
这段代码的前提是知道 NetBox 送出的 Cookie 的名称。如果希望在 iis 中使用此段代码,则比较困难,因为 iis 每次启动后送出的 Cookie 的名称都是不同的,所以为了测试,可以自行送出一个 Cookie 然后再进行测试:

<%Response.Cookie("CookieCheck")="on"%
<html
<body
<Script language="javascript"
if(document.cookie.search("CookieCheck=") == -1)document.write("Not ");
</ScriptAllow.
</body
</html

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/asp/) 

来源:https://www.tulaoshi.com/n/20160129/1506820.html

延伸阅读
标签: Web开发
    你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, Safari四大浏览器之外,世界上还有近百种浏览器。     几天前,浏览器家族有刚诞生了一位小王子,就是Google推出的Chrome浏览器。由于Chrome出生名门,尽管他还是个小家伙,没有人敢小看他。以后,咱们常说浏览器的“四大才子”就得改称...
标签: 浏览器
谷歌浏览器如何直接翻译页面   1、开启谷歌浏览器,点选菜单栏中三横线图标键值,点选设置;   2、登进设置面板后选定显示高级设置;   3、再选定语言和输入设置;   4、此时就添加你想翻译成的语言;   5、之后右击网页点选翻成中文键值就能快速为你翻译。   
标签: 浏览器
IE浏览器出现“您的浏览器不支持cookies功能”解决方法   我们在登录某些网站的时候,IE浏览器有时候出现您的浏览器不支持COOKIES功能的提示,导致登录失败。这里收集整理了此问题的解决方法: 从工具菜单中选择Internet 选项。 单击隐私标签。 单击高级按钮,按下列步骤进行设置。 设置完成,重新启动IE即可。(关闭IE再次重新打...
标签: 浏览器
阿云浏览器如何打印页面   当您需要打印页面时,您可以进行如下操作:点击云logo 页面和标签打印,如下图所示: 或者您也可以直接使用快捷键:Ctrl+P来打印当前页面。
标签: Web开发
看如下的javascript脚本: if (window.XMLHttpRequest) { //Mozilla, Safari,...IE7  alert('Mozilla, Safari,...IE7 ');  if(!window.ActiveXObject){ // Mozilla, Safari,...   alert('Mozilla, Safari');  } else {   alert('IE7');  } } else {  alert('IE6'); } 看看运行效果: script...

经验教程

527

收藏

48
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部