从javascript禁用Internet explorer控制台

disable internet explorer console from javascript

本文关键字:explorer 控制台 Internet 禁用 javascript      更新时间:2023-09-26

是否可以禁用IE开发人员控制台?我试过这个

 <script type="'text/javascript'">
 (function(){
var _z = console;
Object.defineProperty( window, "console", {
get : function(){
    if( _z._commandLineAPI ){
    throw "Sorry, Can't exceute scripts!";
        }
    return _z; 
},
set : function(val){
    _z = val;
}
});
})();
</script>

但不工作

不,它不是。

你不能强迫浏览器做这样的事情。

即使可能,用户也总是可以访问您发送给浏览器的脚本。此外,编写bookmarklet也相对容易,它可以向页面添加一个输入元素,作为临时控制台。

我怀疑您这样做是为了防止用户在您的页面上执行任意代码。就像其他人提到的,总会有办法绕过这种人为的限制(例如:bookmarklet)。相反,您应该关注服务器端验证,并将来自用户的所有数据视为可疑数据。

说……如果硬设置在控制台中禁用JS执行,则禁用EVAL语句(F12控制台中用于评估脚本的语句)。

的例子:

eval = function() {}

禁用F12工具的唯一方法是通过注册表:

软件'政策' [HKEY_CURRENT_USER ' ' ' Microsoft Internet Explorer IEDevTools]"禁用"= dword: 00000001

也可以通过组策略设置,如文档"关闭开发人员工具"。

这不会帮助你作为一个网站所有者阻止F12,但如果你在一个企业,这是一个选择。但实际上你的页面是在客户端机器上运行的,如果他们愿意的话,他们可以使用任何技术来与它交互。

注意:你可以破解一些东西来尝试破坏工具,但这不是一个支持的机制来禁用它:)。