禁用JavaScript控制臺調(diào)試的方法
更新時間:2014年03月07日 17:20:43 作者:
這篇文章主要介紹了禁用JavaScript控制臺調(diào)試的方法,需要的朋友可以參考下
有幾個巨頭公司,即Facebook和Netflix,決定禁止用戶在控制臺(console)執(zhí)行JavaScript命令。
最初這是 由Facebook開始的 ,用于防止惡意用戶通過JavaScript控制臺執(zhí)行特定的命令散播消息(發(fā)送給所有Facebook用戶大量垃圾信息)。
當(dāng)然這受到很多指責(zé),但在我參與之前, 他們使用的代碼 如下所示:
// 看起來 Netflix 似乎是唯 Facebook 馬首是瞻 [https://news.ycombinator.com/item?id=7222129].
(function() {
try {
var $_console$$ = console;
Object.defineProperty(window, "console", {
get: function() {
if ($_console$$._commandLineAPI)
throw "抱歉, 為了用戶安全, 本網(wǎng)站已禁用console腳本功能";
return $_console$$
},
set: function($val$$) {
$_console$$ = $val$$
}
})
} catch ($ignore$$) {
}
})();
雖然我人微言輕,但實際上我認(rèn)為這種做法是合法的。從他們的角度來看,如果暫時禁用控制臺有助于防止一個問題,那就不得不這樣做。
但從長遠來看,這真的不是一個好主意;其目標(biāo)可能只是想要屏蔽依賴他們的目標(biāo)用戶。
無論如何,如果你想防止控制臺執(zhí)行腳本,這段代碼看起來效果不錯,也的確如此。
最初這是 由Facebook開始的 ,用于防止惡意用戶通過JavaScript控制臺執(zhí)行特定的命令散播消息(發(fā)送給所有Facebook用戶大量垃圾信息)。
當(dāng)然這受到很多指責(zé),但在我參與之前, 他們使用的代碼 如下所示:
復(fù)制代碼 代碼如下:
// 看起來 Netflix 似乎是唯 Facebook 馬首是瞻 [https://news.ycombinator.com/item?id=7222129].
(function() {
try {
var $_console$$ = console;
Object.defineProperty(window, "console", {
get: function() {
if ($_console$$._commandLineAPI)
throw "抱歉, 為了用戶安全, 本網(wǎng)站已禁用console腳本功能";
return $_console$$
},
set: function($val$$) {
$_console$$ = $val$$
}
})
} catch ($ignore$$) {
}
})();
雖然我人微言輕,但實際上我認(rèn)為這種做法是合法的。從他們的角度來看,如果暫時禁用控制臺有助于防止一個問題,那就不得不這樣做。
但從長遠來看,這真的不是一個好主意;其目標(biāo)可能只是想要屏蔽依賴他們的目標(biāo)用戶。
無論如何,如果你想防止控制臺執(zhí)行腳本,這段代碼看起來效果不錯,也的確如此。
相關(guān)文章
使用JavaScript實現(xiàn)彈出層效果的簡單實例
下面小編就為大家?guī)硪黄褂肑avaScript實現(xiàn)彈出層效果的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05基于JavaScript實現(xiàn)復(fù)選框的全選和取消全選
這篇文章主要為大家詳細介紹了基于JavaScript實現(xiàn)復(fù)選框的全選和取消全選,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-02-02Javascript獲取background屬性中url的值
Javascript獲取CSS中屬性值方法有很多,今天工作的時候遇到了一個問題是需要利用Javascript獲取css中background-img屬性url的值,通過查閱網(wǎng)站的資料找到了解決方法,現(xiàn)在將方法分享給大家,有需要的朋友們們可以參考借鑒,下面來一起看看吧。2016-10-10