【发布时间】:2012-02-01 21:55:58
【问题描述】:
我在一家开发 Web 应用程序的小公司(阅读:三名员工)工作,我们一直在为我们的应用程序的每个页面使用这种结构:
- 设置环境的 PHP 页面“占位符”。
- HTML 被分离成 Smarty .tpl 文件。
- JavaScript 分离到不同的 .js 文件中。
- 还有一个由 JavaScript 发布到的“ajax_functions.php”文件。
我对文件结构感觉很好,虽然它有点乱(如果我错了,请告诉我!)。我的问题是关于“ajax_functions.php”页面的。现在,JavaScript 将向类似于 'ajax_functions.php?action=subscribe' 的内容发出 $.post 请求,页面本身如下所示:
switch($_GET['action']){
case('subscribe'):
//Do stuff...
break;
default:
die('Invalid request');
}
我只是觉得这种方式太不安全了:如果有人想直接链接到该页面并反复向其发送垃圾信息,则几乎没有办法阻止他们。是否有更好的结构请求?
【问题讨论】:
-
对我来说似乎很合理,您仍然可以使用会话管理来锁定它,或者您可以生成在第一页上生成的一次性请求令牌,通过 ajax 请求传递,并在您的ajax_functions.php 脚本
-
查看之前关于保护 AJAX 请求的问题 - stackoverflow.com/questions/1953954/…