Common.php 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace app\service\controller;
  3. /**
  4. * 公共类
  5. */
  6. class Common extends Base
  7. {
  8. /**
  9. * 验证token
  10. *
  11. * @access public
  12. * @return string
  13. */
  14. protected function verifyToken()
  15. {
  16. $request = \think\Request::instance();
  17. $getApiToken = input('server.HTTP_apiToken');
  18. $getUserToken = input('server.HTTP_userToken');
  19. $action = $request->action();
  20. $controller = $request->controller();
  21. $module = $request->module();
  22. $apiToken = md5(strtolower($action.'Customer-Service'.$controller.$module));
  23. //print_r([$apiToken,$getApiToken]);die;
  24. // 验证服务器token.
  25. if ($getApiToken === $apiToken && empty($getUserToken) === false) {
  26. $usersField = [
  27. 'id',
  28. 'expire_time',
  29. ];
  30. $usersWhere['token'] = $getUserToken;
  31. // 验证用户token.
  32. $users = model('users')->findUsers($usersField, $usersWhere);
  33. $effectiveTime = strtotime(date('Y-m-d H:i:s').'-1 hours');
  34. //if (empty($users) === false && $effectiveTime <= $users['expire_time']) {
  35. if (empty($users) === false) {
  36. $updateWhere['id'] = $users['id'];
  37. $updateData['expire_time'] = strtotime(date('Y-m-d H:i:s'));
  38. model('users')->updateUsers($updateWhere, $updateData);
  39. return true;
  40. } else {
  41. return false;
  42. }
  43. } else {
  44. return false;
  45. }
  46. }//end verifyToken()
  47. protected function doTokenCheck(){
  48. if (!$this->verifyToken()){
  49. echo json_encode(['code' => -1, 'data' => [], 'msg' => 'check false!'],256);
  50. exit ;
  51. }
  52. }
  53. /**
  54. * 获取用户信息
  55. *
  56. * @access public
  57. * @return string
  58. */
  59. protected function getUserInfo()
  60. {
  61. $getUserToken = input('server.HTTP_userToken');
  62. $usersField = ['*'];
  63. $usersWhere['token'] = $getUserToken;
  64. // 获取用户信息.
  65. $usersInfo = model('users')->findUsers($usersField, $usersWhere);
  66. return $usersInfo;
  67. }//end getUserInfo()
  68. }