注意:下面的示例只是一个虚构的简化示例!

假设我在Meteor.JS应用程序中有两个按钮:一个同意,将某个元素的分数加+1,另一个反对,减去某个元素的一个。

如果为此使用基于类的事件(一个同意,一个不同意),那么用户是否可以手动更改类和否决模板中设置的条件?

<button class="agreement tiny">

 Agree!

</button>


如果用户单击此按钮,则可以删除其协议:

<button class="remove-agreement tiny">

 Remove agreement!

</button>


我的问题是,用户是否可以手动将删除协议按钮的类别从remove-agreement更改为agreement,以便他可以添加多个+1。这可能吗?我自己尝试过,但似乎没有用,但我(显然)在这方面没有专家。

编辑:现在可以正常工作。这是否意味着我需要为此实现服务器端安全性?

最佳答案

是的,用户可以删除该类。每当网站要求提供Facebook喜欢时,我都会这样做。删除display:none的时间为10秒。 10秒的隐私保护对我来说还可以。

每当客户要求插入/更新/删除某些内容时,您都需要进行验证。

这是显而易见的情况:您需要存储用户投票,并且每次用户尝试投票/否决时,都要检查用户是否已经投票。如果出于某种原因用户试图投票否决或投票超过1次,则可以记录下来,分析并决定是否应禁止该用户。

您可以使用allow/deny rules进行检查,甚至可以使用simple server method进行检查。别忘了检查/阻止来自客户端的数据库CRUD操作,否则...您就被搞砸了!

10-01 01:20