2

在我的 asp.net mvc 应用程序中,我有一个任何人都可以创建的调查模型。此外,我希望来自世界特定地区的人参与(投票)调查。如果我知道位置(可能是城市、国家或州等),这很容易。我想在创建调查时添加此位置限制(即用户可以告诉伊斯兰堡或旁遮普或巴基斯坦的人)可以投票或填写此调查表。此外,我想补充一点,位置限制适用于(或预期)少量调查(最多 5%),因此如何最有效地实现此功能。

4

2 回答 2

3

您可以通过以下几种方式做到这一点:

  1. 根据之前询问用户位置的问题确定用户来自哪里。不是防弹的,因为用户可以很容易地说他们来自他们不是的地方。
  2. 获取 IP -> 国家/地区映射列表,该列表将为您提供客户 IP 地址与其位置的查找。您将基于此进行限制。
于 2011-07-20T17:49:26.657 回答
2

您可以使用 IP 地址找出某人的位置。有许多提供 IP 地址位置的服务。他们将基于此为您提供用户位置的近似值。

以下是该服务的示例:

您还可以使用 HTML5 地理定位功能获取他们的位置。

对于您的情况,使用 IP 地址可能就足够了。HTML5 选项很好,因为如果用户的系统上没有 GPS 设备,它最终会回退到使用 IP 地址位置。

为了在 ASP.NET 中获取用户 IP 地址,您可以使用

Request.Servervariables("REMOTE_ADDR")
于 2011-07-20T17:47:51.460 回答