在我的网站上,我有一个注册页面,该页面发出AJAX请求,以检查输入用户名后是否可用。该文件称为check.php,与registration.php文件位于同一目录中。将数据发布到check.php时,它将在MySQL数据库中执行查询,并返回使用该用户名找到的用户数。
如果有人将数据发布到check.php文件,他们也会看到结果。我需要以某种方式停止这种情况,我已经阅读了一些需要对每个请求进行“身份验证”的答案。尽管我不太确定要搜索什么以找到更多相关信息,但这可能是一个很大的主题。验证每个请求是否是阻止不必要的用户名检查的好方法?如果是这样,如果有人能指出正确的方向,我将不胜感激。
常见情况的答案:否-您不能阻止这种情况,因为AJAX只是一个HTTP请求。无论您如何保护服务器,都可以发送。因此,如果要点是-保护免受“邪恶的黑客”的侵扰,则没有办法做到这一点。正确的方法是检查/验证服务器端的任何内容。
但这只是基本检查,您可以阅读
if (strtolower($_SERVER['HTTP_X_REQUESTED_WITH'])=='xmlhttprequest')
-但请注意-这也是数据,来自客户端,即无法信任(实际上,它只是HTTP请求标头,仅此而已)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句