javascript - 防止用户篡改 View 的增量代码

标签 javascript c# jquery asp.net .net

我有一个在用户单击图像时调用的函数。我正在计算这些点击次数并增加数据库中服务器上的 View 。该函数调用一个 Web 服务来更新数据库中的 View 列。

我希望能够预测在用户与该图像交互并单击它之后何时以合法方式调用该函数。我知道模仿客户端的点击行为很容易并且无法阻止。我也不想在服务器上跟踪每个 IP 和图像 ID。

是否有任何资源不足的好方法可以防止用户篡改该 View 增量代码?我没有为用户提供登录选项,用户对网站都是匿名的。

代码示例:

$(document).on("click", ".the-image", function(event){
    var imageId = parseInt($(this).attr("image-id"), 10);
    // webservice to increment the views of the image +1
    $.ajax({
       url: CONST_WEBSERVICE_URL,
       dataType: "json",
       contentType: "application/json; charset=utf-8",
       method: "POST",
       data: "{'imageId': " + imageId + "}"
   });
});

我使用 ASP.NET 4.5/C#/jQuery 构建了我的网站。

最佳答案

尝试跳出框框思考。您可以存储 session 中单击图像的次数并访问服务中的 session 状态。然后您就知道他们是否已经查看过该图像。

[WebMethod (EnableSession=true)]

也许您可以设置插入数据库的行数限制。

关于javascript - 防止用户篡改 View 的增量代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31429920/

相关文章:

javascript - 为什么动画速度参数不带我的变量 jQuery

javascript - 嵌入的 YouTube 视频会降低网络速度

Javascript - 选择随机数组 IF 与当前数组相同,然后选择另一个

javascript - 使用 D3.js 在单击圆圈时生成阴影

c# - 为什么 View 在 Prism 复合 wpf 应用程序中第一次加载非常慢

jquery定义自定义事件

javascript - Angular Filter,将 JSON 文件日期与今天的日期进行比较

c# - 按下后退按钮时跳过页面,WP7

c# - 在 DbMigration 中访问 Up 里面的上下文

javascript - 简单的 node.js 服务器返回成功或错误