家政小程序
Ви не можете вибрати більше 25 тем Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

UserController.php 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace App\Http\Controllers;
  3. use Illuminate\Http\Request;
  4. use Illuminate\Support\Facades\Cache;
  5. use App\User;
  6. class UserController extends Controller
  7. {
  8. /**
  9. * @param Request $request
  10. * @return \Illuminate\Http\JsonResponse
  11. */
  12. public function login(Request $request) {
  13. $name = $request->input("name");
  14. $password = $request->input("password");
  15. if($name && $password) {
  16. $user = User::where("name", $name)->where("password", md5($password))->first();
  17. if($user) {
  18. $token = md5($user->name . mt_rand());
  19. //$request->session()->put($token, $user);
  20. Cache::put($token, $user, 30);
  21. return response()->json([
  22. "status" => 0,
  23. "token" => $token
  24. ]);
  25. } else {
  26. return response()->json([
  27. "status" => -2,
  28. "message" => "用户不存在或密码错误"
  29. ]);
  30. }
  31. } else {
  32. return response()->json([
  33. "status" => -1,
  34. "message" => "信息不能为空"
  35. ]);
  36. }
  37. }
  38. /**
  39. * @param Request $request
  40. */
  41. public function logout(Request $request) {
  42. $token = $request->header("Authorization");
  43. if($token) {
  44. $token = trim($token);
  45. $token = str_replace("Bearer ", "", $token);
  46. if ($request->session()->has($token)) {
  47. $request->session()->forget($token);
  48. return response()->json([
  49. "status" => 0,
  50. "message" => "登出成功"
  51. ]);
  52. }
  53. }
  54. }
  55. }