You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

51 lines
2.0 KiB

  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Steven
  5. * Date: 2016/12/2
  6. * Time: 18:50
  7. */
  8. require_once __DIR__ . '/Api/commonService.classs.php'; //基类
  9. require_once __DIR__ . '/Utils/utils.class.php'; //引入工具类
  10. if (isset($_POST['t'])) { //t:文件名_方法名称
  11. //TODO:艺龙对接我们的产品入口
  12. $type = explode("_", $_POST['t']);
  13. $file_name = isset($type[0]) ? 'Api/' . $type[0] . 'Service.class.php' : false; //文件名
  14. $class_name = isset($type[0]) ? $type[0] . 'Service' : false; //类名
  15. $method_name = isset($type[1]) ? $type[1] : false; //方法名
  16. if (false === $file_name || false === $class_name || false === $method_name) {
  17. $result['code'] = '101';
  18. $result['info'] = '参数错误!';
  19. echo json_encode($result);
  20. exit();
  21. }
  22. if (file_exists($file_name)) {
  23. require_once $file_name;
  24. if (!is_callable(array($class_name, $method_name))) { //检查类方法是否存在且是否可以访问
  25. $result['code'] = '102';
  26. $result['info'] = '非法请求!';
  27. echo json_encode($result);
  28. exit();
  29. }
  30. $class_obj = new $class_name;
  31. $res = call_user_func(array($class_obj, $method_name), $_POST); //根据指定的类名、方法名请求指定的类、方法
  32. //print_r($res);
  33. return $res;
  34. } else //文件不存在
  35. {
  36. $result['code'] = '103';
  37. $result['info'] = '访问被阻止!';
  38. echo json_encode($result);
  39. exit();
  40. }
  41. } elseif (isset($_POST['Message'])) //订单接口 ;根据传入的xml解析判断操作类型(下单、取消,更新订单)或者要求eLong传入指定操作类型的参数
  42. {
  43. require_once 'Api/createService.class.php';
  44. $class_obj = new createService();
  45. $res = call_user_func(array($class_obj, 'orderMain'), $_POST); //根据指定的类名、方法名请求指定的类、方法
  46. return $res;
  47. } else {
  48. //TODO:我们对接艺龙的产品入口
  49. //echo "hello world";
  50. }