怎样获取客户端ie安全设置状态和cookie是否被禁用?

1825 2004-01-11 09:51:52
我想获取客户端ie的设置情况。

如:
当用户禁用"运行AxtiveX 控件和插件"时有没有什么办法能检测的到?
当用户禁用cookie时可以检测吗?最好不要用一个页面写,另个页面读的方法 :)
...全文
1586 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
1825 2004-01-12
  • 打赏
  • 举报
回复
多谢了!
看来ActiveX只能用错误处理捕获了,asp..
结贴..
iamsangster 2004-01-12
  • 打赏
  • 举报
回复
学习一下!
紫郢剑侠 2004-01-11
  • 打赏
  • 举报
回复
学习...
loveme2000ok 2004-01-11
  • 打赏
  • 举报
回复
Cookie是服务器发送给浏览器的体积很小的纯文本信息,用户以后访问同一个Web服务器时浏览器会把它们原样发送给服务器。通过让服务器读取它原先保存到客户端的信息,网站能够为浏览者提供一系列的方便,例如在线交易过程中标识用户身份、安全要求不高的场合避免用户重复输入名字和密码、门户网站的主页定制、有针对性地投放广告,等等
  Cookie的目的就是为用户带来方便,为网站带来增值。虽然有着许多误传,事实上Cookie并不会造成严重的安全威胁。Cookie永远不会以任何方式执行,因此也不会带来病毒或攻击你的系统。另外,由于浏览器一般只允许存放300个Cookie,每个站点最多存放20个Cookie,每个Cookie的大小限制为4 KB,因此Cookie不会塞满你的硬盘,更不会被用作“拒绝服务”攻击手段。<
孟子E章 2004-01-11
  • 打赏
  • 举报
回复
用ASP检测浏览器是否允许Cookie功能的方法

摘 要:指出用ASP检测浏览器Cookie功能的误区,说明错误的原因,并给出
解决方法和源代码
关键词:浏览器、Cookie、信息记录区

一、前言
检测浏览器是否允许Cookie功能其实并不困难。许多的文章都讨论到这个问题,但是,这
些文章中往往存在着许多问题,使得读者容易混淆,甚至有些文章中所给出的方法根本就是
错误的。本文将一步一步地详细解释困难所在,并给出实用的ASP代码。

二、问题的提出
尽管现在的浏览器基本上都支持Cookie功能,但是用户可以通过设置将Cookie功能禁止,
对于希望将一些信息记录到浏览器上去的Web服务器,就必须要清楚前来访问的用户浏览
器是否支持Cookie功能,惟一的办法就是自己去测试用户浏览器是否支持Cookie。这个问
题似乎十分简单,正如许多文章中所介绍的一样,我先给出一段ASP代码,它似乎可以轻
易地完成任务。
Cookie_test.asp

<%@ Language="VBScript" %>
<%
Option Explicit
Dim CookieValueset
Dim CookieValueRead
CookieValueset="true"
CookieValueRead="false"
Response.Cookies("Cookie_test") = CookieValueset
Response.Cookies("Cookie_test").Expires = Date + 1
CookieValueRead = Request.Cookies("Cookie_test")
If CookieValueRead = CookieValueSet Then
Response.Write "浏览器支持Cookies"
Else
Response.Write "浏览器不支持Cookies"
End If
%>

实际上,上述代码在浏览器允许和禁止Cookie功能的情况下,均得到浏览器支持Cookie功
能的结果。为什么会产生这样的结果呢?首先让我们来看一下Cookie的原理。浏览器是遵
循HTTP协议访问Web服务器的,一个完全的HTTP请求是由浏览器发出申请,Web服务
器回应其申请的内容,在这个过程中,浏览器会提供一块信息记录区来存储一些特殊的信息,
这个信息记录区是可以由浏览器和Web服务器同时访问的,而Cookie就保存在这个信息记
录区中。通过这个信息记录区,Web服务器可以写入Cookie以记录一些信息,并且可以在
将来进行访问,直到这个Cookie的生命期终止。在ASP代码中的Response.Cookies和
Request.Cookies类就是用来访问Cookie的。
现在的问题在于,按照HTTP协议,在往浏览器中写入Cookie后,其内容实际上存在于缓
存之中,直到该页面终止,才将内容写入到浏览器提供的信息记录区中去。在同一页面中写
入Cookie后立即读出其内容,读出的是缓存中的临时信息,而不是信息记录区中真正的
Cookie内容,所以在上面的代码中,即使浏览器禁止Cookie功能,仍然得到成功写入Cookie
的结果。

三、问题的解决
要解决这个问题,可以有两个办法,第一个办法是利用两个页面文件来分别进行Cookie的
写入和读出,在第一个文件中写入Cookie,然后转向第二个文件读出并判断,这样可以轻
易地得到正确的结果。但访问两个页面文件的方法显然对Web服务器的管理添加了麻烦,
在不担心这个问题的前提下,这是一个最佳的解决方法。
第二个办法是利用ASP中的REDIRECT语句来解决问题,如下笔者给出ASP源代码。浏
览器访问Cookie.asp,这个文件中含有一些代码判断Cookie检查是否已经作过,如果是,
则显示检查结果,如果没有,则自动转向Cookie_Detect.asp文件,在该文件中测试Cookie
功能并将结果传回给Cookie.asp。值得强调的是,我们不能使用ASP的Cookies和Sessions,
因为它们都是利用前面所提的信息记录区来存储信息的,当Cookie功能禁止后,不可跨页
面使用。因此,笔者使用了QuerySring 来传递参数。

四、源代码
Cookie.asp

<%@ Language="VBScript" %>
<%
Option Explicit
Response.Buffer = True
Dim bCookies ' T/F indicating Cookies enabled.
bCookies = Request.QueryString("Cookies")
Select Case LCase(bCookies)
Case "true", "false"
' We got a valid response.
bCookies = CBool(bCookies)
Case Else
Response.Cookies("Cookie_test") = "true"
Response.Redirect "Cookie_detect.asp"
End Select
%>
<html>
<head>
<title>检测浏览器是否允许Cookie功能</title>
</head>
该浏览器Cookies功能: <%= bCookies %>
</body>
</html>

Cookie_detect.asp

<%@ Language="VBScript" %>
<%
Option Explicit
Response.Buffer = True
Dim bCookiesEnabled
bCookiesEnabled = Request.Cookies("Cookie_test")
bCookiesEnabled = (bCookiesEnabled = "true")
Response.Redirect "Cookie.asp" & "?Cookies=" & bCookiesEnabled
%>

孟子E章 2004-01-11
  • 打赏
  • 举报
回复
var o=null
try{
o=new ActiveXObject("xxxx")
}
catch(e){
alert("没有权限")
}
fusoft 2004-01-11
  • 打赏
  • 举报
回复
AxtiveX 的检测我还没试过,用javascript检测cookies还是可以的!

具体的代码一时没找到!(刚换了80G的硬盘,资料很乱!)

你到google里搜索肯定有!

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧