我有一个简单的HTML5 Canvas游戏,在一部分的最后我想在MySQL中存储变量。使用XMLHttpRequest,Ajax或其他方法做到这一点是否安全?这就是我开始写它的方式:
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState == 4 && request.status == 200) {
var success = request.responseText;
alert(success);
}
}
request.open('GET', 'saveLevel.php?name='+name+'&level='+level, true);
request.send();
我的问题是每个人都可以在控制台中这样做:
var request = new XMLHttpRequest();
request.onreadystatechange = function() {
if (request.readyState == 4 && request.status == 200) {
var success = request.responseText;
alert(success);
}
}
request.open('GET', 'saveLevel.php?name='+name+'&level=100', true);
request.send();
(怎么样)我可以解决它吗?
答案 0 :(得分:4)
您可以使用身份验证,混淆和缩小的组合来保护JavaScript网络呼叫
示例JS Obfuscator Library JScrambler
示例JS缩小库UglifyJS
身份验证 -
我认为,您的API具有某种身份验证字段(例如Hash / Token等)。如果没有,您可以将其与 - This answer集成。
如果您按照上述步骤操作,肯定会让它非常安全。