我正在编写一个网站,用户可以在上面发布内容。这个功能通过以下的jQuery ajax实现:
$.ajax({
type: 'POST',
url: 'action/post.php',
data: 'posttext='+posttext+'&imageurl='+imageurl,
success: function(feedback){
$('#feedback').val(feedback);
}
});
现在我想知道:任何人都可以编写自己的ajax来重复地向网站发布内容。我该如何防止这种情况发生?我确定我需要在post.php中进行某种安全检查 - 我已经听说过http referer,但它可以被修改,所以它并不是非常可信。
此外,我想在post.php中添加一个计时器,以确保来自同一IP地址的帖子每x秒只能发布一次,并且如果在x秒以下发送帖子,则重置计时器(类似于stack overflow在评论中所做的操作)。
有人知道如何保护ajax并设置计时器吗?或者有其他保护发布机制的想法吗?
谢谢!
Dennis