我正在用PHP和jQuery制作一个游戏,但是我在安全性方面有一些问题。这是一个打字游戏,当玩家类型组合正确时,jQuery会向PHP发送ajax请求,而PHP会向会话添加10分。这是我的代码:
$('body').on('keyup','.codes_input',function() {
if($('.codes_input').val() == $('.code').html()) {
$.post(url+'/save_results',{_token:token});
points=points+10;
$('.code').html(randomString());
$('.codes_input').val('');
$('.points').html(points);
}
});然而,我的朋友们可以简单地用铬扩展(如果我理解正确的话)做许多这样的$.post(url+'/save_results',{_token:token});请求,得到1000分甚至更多的分数(作弊)。有什么办法可以避免这种情况吗?我找不到其他的编程方法了.谢谢你的帮助,为我糟糕的英语道歉:)
发布于 2016-09-03 15:32:15
用户总是可以看到Javascript,因此您无法真正构建这样的安全应用程序。方法是通过Javascript检查代码是否正确(就像您已经做的那样),然后将代码发送到PHP脚本并在那里进行验证。
发布于 2016-09-03 15:38:58
将评估和奖励点的逻辑移到PHP层。
使用HTML附带的jQuery来提交答案。
作为一个示例体系结构,您可以查看以下内容:
https://stackoverflow.com/questions/39308367
复制相似问题