如何阻止用户从浏览器控制台更改脚本
how to stop user changing scripts from console of browser
嗨,我想阻止用户从浏览器控制台更改我的脚本。
例如:在 html 中,如果我有如下所示的div
<div id="demo">
Hi..
</div>
和 jQuery
$('#demo').hide();
但是用户仍然可以检查此页面的元素,他们从控制台更改脚本或编码,他们可以查看具有ID演示的div。因此,请告诉我如何阻止用户更改我的代码,或者即使他们更改了它也不应该显示div。
一旦你的页面被发送给用户,你就无法阻止他做任何事情。即使使用缩小的js,他也能够在元素上强制显示。您所能做的就是在发送页面之前将其隐藏在php端
例如:
<?php
session_start();
if (!empty($_GET['demo']) && $_GET['demo'] == "whatever") $_SESSION['show_demo'] = true;
?>
<?php if(isset($_SESSION['show_demo']) && $_SESSION['show_demo'] == true): ?>
<div id="demo">
Hello World
</div>
<?php endif;?>
<a href="?demo=whatever">Click here to show demo</a>
在这里,您可以阅读一篇包含一些有用单词的文章: 如何隐藏JS代码
此外,您可以使用混淆
您只需要意识到您无法对用户隐藏JS代码,因为浏览器应该下载并执行它。如果你想加密它,你应该向浏览器发送一个通行证,用户也会得到。
想象一下:我告诉你1,你应该告诉我同样的事情。如果我告诉你 2 你会告诉我什么?
和。。。在这里。。。所有程序员的问题。所有程序员都希望隐藏自己的代码:)。只。。。相信我。是的。
还有一个建议是尝试这个:在线混淆器
如果你想用PHP代码来做到这一点,试试这个:
// action.php
<?php
if ( !isset($_POST['show']) ) {
die('HACKER !');
} else {
echo '
<html>
<head>
<title>Main Page</title>
<body>
<div id="demo">DEMO</div>
<br>
<form action="action.php">
<input name="show" style="display: none;">
<input type="submit" value="Try me !"/>
</form>
</body>
</html>';
}
?>
这些文件应位于同一文件夹中。
// index.html
<html>
<head>
<title>Main Page</title>
</head>
<body>
<form action="action.php">
<input name="show" style="display: none;">
<input type="submit" value="Try me !"/>
</form>
</body>
</html>
祝你好运:)
我最近在做这方面的研究。它可能不是最佳解决方案,但php有一个内置函数,称为htmlspecialchars
有关进一步说明,请参阅此处:
http://php.net/manual/en/function.htmlspecialchars.php
当然,您的标签上写着php,但是我目前在您当前的代码中没有看到任何php代码。我还可以推荐的是这两个链接,以使用不同的编程语言实现相同的效果:
http://www.toao.net/32-my-htmlspecialchars-function-for-javascript
希望你进一步实现你的目标。祝你好运
- 如何让JS脚本在导航后继续运行(谷歌chrome控制台)
- 如何在java中获得浏览器的java脚本控制台输出
- JavaScript强制:控制台与脚本
- 在我打开控制台之前,IE9脚本不会运行
- JS脚本在浏览器控制台或FireBug控制台上运行有时间限制吗
- Web控制台脚本,以保持id的可变数量不变
- 我将如何完成此脚本,该脚本将用户输入乘以 100,然后在浏览器中将其输出到控制台
- valueOf() 在脚本和 F12 控制台(仅限 Chrome 和 IE11)中给出不同的值
- JS控制台与用户脚本中的不同行为,尝试操作iframed内容
- 如何从浏览器的JS控制台控制Tampermonkey脚本的功能
- 如何阻止用户从浏览器控制台更改脚本
- 从控制台显示的数据属性值,但不使用脚本显示
- 通过Google Chrome/Firefox Addon中的控制台访问/操作内容脚本
- 为什么不't控制台加载的脚本可以访问DOM
- 为什么我的Google扩展似乎只有在我'我正在观察后台脚本控制台
- chrome.tabs.executeScript调用的外部脚本没有控制台日志
- Firefox控制台错误:试图在清除的范围内运行编译并执行脚本
- 如何使控制台在后台运行脚本
- rails服务器/控制台错误-没有这样的文件可加载-咖啡脚本(LoadError)
- 通过控制台替换脚本URL