家政小程序
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.

UserController.php 1.6KB

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