![](/img/trans.png)
[英]Open Safari / Google Chrome developer tools programmatically from JavaScript
[英]How to programmatically close Google chrome developer tools if it is already open?
我在網站上禁用了谷歌瀏覽器開發者工具。 但是仍然可以使用以下方法訪問它,
如何禁用此行為? 如果 Google chrome 開發者控制台已經打開,我該如何關閉它?
沒有可靠的方法可以防止客戶端修改或查看發送到瀏覽器的任何數據。
我找不到合適的理由想要或需要禁用 Chrome 中的 F12 開發人員工具等工具。 只要您正在發送數據,也不會有任何方法來執行這樣的操作。
讓我們假設通過 Chrome 中的一些錯誤,或者通過使用 javascript - 您可以禁用對開發人員工具的訪問。 太好了! 但是,是什么阻止了用戶(無論是否惡意)向您的網站發出 cURL 請求並僅保存 HTML 以供以后編輯和查看? 沒什么!
您應該遵循的做法,而不是無效地阻止對開發人員工具的訪問:
即使有人能夠修改您網站的源代碼......那又怎樣? 假設您遵循正確的做法和准則,這應該無關緊要。 身份驗證和邏輯都是在服務器端處理的,javascript/html 應該只用於增強用戶的體驗——而不是執行關鍵的邏輯或數據交互。
據我所知,這是不可能的
無論如何最好避免。 即使可以找到解決方案,請記住,如今大多數瀏覽器都允許用戶阻止 Javascript 干擾他們的瀏覽器設置和窗口鑲邊,即使在使用 window.open 時也是如此。 所以你絕對沒有辦法保證你正在尋找的行為。
但是是的,您可以使用技巧阻止 F12 鍵它可能對您有幫助..
window.oncontextmenu = function () {
return false;
}
document.onkeydown = function (e) {
if (window.event.keyCode == 123 || e.button==2)
return false;
}
我剛剛測試了這個並且它對我有用...... http://output.jsbin.com/vayukuqubo
它只是rightclick & F12 on your page
禁用禁用rightclick & F12 on your page
,但無法阻止用戶打開Dev Tools Menu > Tools > Developer tools
事實上,您永遠不應該禁用對客戶端工具的控制,以確保您的網站/數據安全。
您無法阻止用戶以一種或其他方式打開開發者控制台,但有一種方法可以阻止用戶進行惡意活動/玩您的網站(非常糟糕但可能)。 詳細的理解和解決方法可以參考這個問題。
保護數據的唯一合理方法是在服務器端編寫安全代碼並記住,如果您允許某人下載某些數據,他可以隨心所欲地使用它。
我能做的最好的事情就是查看用戶是否在開發工具中。 這是我的代碼:
<!DOCTYPE html>
<html>
<body>
<pre id="output"></pre>
<script type="text/javascript">
var element = new Image;
var devtoolsOpen = false;
element.__defineGetter__("id", function() {
devtoolsOpen = true; // This only executes when devtools is open.
});
setInterval(function() {
devtoolsOpen = false;
console.log(element);
if (devtoolsOpen == true) {
// run code if dev tool are open
} // else here if you like to see if dev tools are not open
}, 1000);
</script>
</body>
</html>
每一秒它都會說用戶是否打開了開發工具。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.