AJAX和PHP通信:安全的方式


AJAX and PHP communication : the safe way

正如我之前的一个主题中所讨论的,我正在尝试将JSON发送到php脚本并从中获取它。目前,一切都很顺利。我已经组织了我的php脚本,这样它就可以在url中获得参数,并在此基础上(在switch语句的帮助下)调用适当的函数。然而,我注意到的是,通过查看源代码,可以很容易地将链接复制到php脚本并通过它操作数据。这是我感到不舒服的地方。有哪些替代方案?

.html ajax调用示例:

function getAllData(){
 $.ajax({
    type: "POST",
    url: "dataDao.php?f=getAll",
    datatype: "json",
    async: false,
    success: function(data){ 
        $.each(JSON.parse(data), function(index, value) {
          alert(value['firstName'] );
        });
    },
    error: function(err){
      alert('error!' + JSON.stringify(err));
    }
 });
}

php代码示例

switch($_GET['f']) {
case 'getAll':
    $result = getAll();
    break;
case 'getOne':
    $id = $_GET['id'];
    $result = getOne($id);
    break;
case 'addTo':
    $result = addToArray();
default:
}

没有任何替代方案。面向公众的接口是HTTP服务器,而不是JavaScript。您必须在服务器级别实现所需的任何输入健全性检查、数据转义、身份验证和授权。