javascript可以模拟按钮点击

Can javascript simulate a button click?

本文关键字:按钮 模拟 javascript      更新时间:2023-09-26

我正在设计一个网站,如果允许宏自由运行,这将是一个问题。

我想了一种方法来停止通过模拟点击按钮发出的HTTP请求来生成的宏,但如果他们可以插入javascript脚本;点击";按下按钮,然后像普通用户一样继续操作。

通过模拟按钮点击,我的意思是,按钮被按下,按钮所在的Form与相关的php代码一起运行

逻辑告诉我javascript可以做到这一点,但我想知道,当然,感谢您的任何输入!

可以始终通过编程方式单击按钮。例如,您可能有一个页面,其表单如下:

<form>
    <input type="text" />
    <button>Do something</button>
    <input type="submit">
</form>

然后就可以打开调试控制台并键入

document.getElementsByTagName('button')[0].click();

它将点击按钮,或

document.getElementsByTagName('input')[1].click();

它会点击表单的提交按钮,或者只是

document.forms[0].submit();

无需单击按钮即可提交表单。

并没有办法阻止用户在客户端上掌握JavaScript代码。您必须在服务器端添加一些验证,以防止不必要的用户操作。

您唯一能做的就是在服务器上验证请求。

一旦您将页面交给客户,您就无法对如何使用它进行技术控制。

你可以做什么,例如:

假设您正在制作javascript游戏。您使用AJAX将玩家的分数发送到用于日志记录的服务器。在查看了脚本之后,恶意用户可以运行您的AJAX代码即使他们只赚了5000分,也能打出1000000分。

您无法阻止这种情况在javascript端发生。然而,应该有一些方法来验证服务器端的AJAX请求,您可以将安全"令牌"传递给黑客无法获得的javascript。