如何防止用户操纵数据:' AJAX代码的一部分?

时间:2018-01-28 23:20:27

标签: javascript jquery ajax

首先,我知道发送到服务器的数据不会被操纵(我试过,我无法通过简单地操纵AJAX的data:部分中的数据来操纵发送到服务器的数据请求代码。)。好吧,我不确定这个。

例如,让我们考虑以下AJAX代码。

$.ajax({
    url: 'some/url',
    type: 'POST',
    data:{
        'user_id': '6',
        'data_key': 'data_value'
    },
    success:{ // Do Something },
    error: { // Do Something }
});

现在,如果某个随机用户使用检查元素 firebug 或类似的东西来操纵user_id该怎么办?实际上会发生什么呢?

我尝试过但我无法做到这一点。为什么呢?

1 个答案:

答案 0 :(得分:2)

您永远不能依赖来自客户端的输入。有人可以很容易地打开控制台并写下:

$.ajax({
    url: 'some/url',
    type: 'POST',
    data:{
        'user_id': '999',
        'data_key': "something you weren't expecting"
    },
    success:{ // Do Something },
    error: { // Do Something }
});

或者抓住数据包并使用Wireshark

等任何工具进行编辑