6

我想知道在不需要用户登录的情况下提供投票系统(或说评级)所涉及的技术障碍是什么。我知道机器人存在问题,投票一堆 - 但是如果你保留用户的 IP 地址怎么办?代理会成为问题吗?

我想建立一个仍然可靠的公共投票系统。现在有可能吗?

编辑 正确性的风险适中,即人工验证和每位用户一票。鉴于用户的角色(选民),成熟的登录会要求用户过多

此外,如果这是“不可能”完成的,那么您如何在事后发现投票欺诈?维基百科的模型可以在这里工作吗?

谢谢,马特·穆勒

4

2 回答 2

8

正如您所说,您需要处理机器人行为。

如果您记录一个 IP 地址,您将遇到通常留在代理后面的企业用户的问题,因此每个人似乎都有相同的 IP。

也许您应该显示一些验证码图像来验证人工投票。对用户来说不会那么难,因为它假设只投票一次。

编辑:如何强制每个用户投一票?

你可以:

  • 要求提供有效的电子邮件并发送链接以进行投票
  • 登录您的用户并让它投票
  • 让用户投票并保存 cookie
  • 让用户投票,封禁用户IP

所有这些选项都有一个弱点,所以你永远无法确定。

要“确定地”处理这个问题,您可能需要将他们的虚拟身份与他们的真实身份绑定。这可以通过询问个人信息并保留来完成。但这带来了一个全新的问题集。

于 2009-12-13T19:33:04.613 回答
2

首先,确保投票使用 POST 来防止机器人和预缓存客户端引起投票。

限制 IP 地址会导致动态 IP 范围、代理和共享连接的人出现问题,所以我不会这样做。这些系统中的大多数都记得用户使用 cookie 进行了投票,但这当然很容易通过删除 cookie 或仅使用不同的浏览器来欺骗。

于 2009-12-13T19:33:24.813 回答