我之前问过一个类似的问题,答案很简单:
如果 JavaScript 可以做到,那么任何客户端都可以做到。
但我仍然想找到一种方法来限制对 JavaScript 的 AJAX 调用。
原因是 :
我正在构建一个 Web 应用程序,当用户单击图像时,标记如下:
<img src='src.jpg' data-id='42'/>
JavaScript 像这样调用 PHP 页面:
$.ajax("action.php?action=click&id=42");
然后 action.php 在数据库中插入行。
但我担心一些用户可以通过调用必要的 url 来自动“点击”所有 id 等条目,因为它们在源代码中是可见的。
我怎样才能防止这样的事情,并确保它只在点击时起作用,而不是通过从浏览器选项卡调用 url?
ps
我认为一个可能的解决方案是使用加密,例如在用户访问时生成一个密钥,并使用该密钥或 hash/md5sum/其他任何内容调用操作页面。但我认为它可以在不将其转化为安全问题的情况下完成。我对吗 ?此外,我不确定这种方法是否是一种解决方案,因为我对这种安全性或其实现一无所知。