UserController.php 923 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Exceptions\ApiException;
  4. use App\Http\Requests\LoginRequest;
  5. use App\Models\User;
  6. use Illuminate\Http\Request;
  7. use Illuminate\Support\Facades\Auth;
  8. class UserController extends Controller
  9. {
  10. public function login(LoginRequest $request)
  11. {
  12. $u = User::where("login", $request->login)->where("password", $request->password)->first();
  13. if (!$u) {
  14. throw new ApiException(401, "Authentication failed");
  15. }
  16. $data = [
  17. "data" => [
  18. "user_token" => $u->generateToken()
  19. ]
  20. ];
  21. return response()->json($data);
  22. }
  23. public function logout()
  24. {
  25. Auth::user()->api_token = null;
  26. Auth::user()->save();
  27. $data = [
  28. "data" => [
  29. "message" => "logout"
  30. ]
  31. ];
  32. return response()->json($data);
  33. }
  34. }