D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
tattooscyy
/
api2
/
app
/
Http
/
Controllers
/
Filename :
APIController.php
back
Copy
<?php namespace App\Http\Controllers; use JWTAuth; use App\Models\User; use Illuminate\Http\Request; use Tymon\JWTAuth\Exceptions\JWTException; use App\Http\Requests\RegistrationFormRequest; class APIController extends Controller { /** * @var bool */ public $loginAfterSignUp = true; /** * @param Request $request * @return \Illuminate\Http\JsonResponse * */ public function login(Request $request) { $input = $request->only('email', 'password'); $token = null; if (!$token = JWTAuth::attempt($input)) { return response()->json([ 'success' => false, 'message' => 'Invalid Email or Password', ], 401); } session(['token' => $token]); return response()->json([ 'success' => true, 'token' => $token, ]); } /** * @param Request $request * @return \Illuminate\Http\JsonResponse * @throws \Illuminate\Validation\ValidationException */ public function logout(Request $request) { $this->validate($request, [ 'token' => 'required' ]); try { JWTAuth::invalidate($request->token); return response()->json([ 'success' => true, 'message' => 'User logged out successfully' ]); } catch (JWTException $exception) { return response()->json([ 'success' => false, 'message' => 'Sorry, the user cannot be logged out' ], 500); } } /** * @param RegistrationFormRequest $request * @return \Illuminate\Http\JsonResponse */ public function register(RegistrationFormRequest $request) { $user = new User(); $user->name = $request->name; $user->email = $request->email; $user->facebook_id = ""; $user->password = bcrypt($request->password); $user->save(); if ($this->loginAfterSignUp) { return $this->login($request); } return response()->json([ 'success' => true, 'data' => $user ], 200); } public function me() { return response()->json(auth('web')->user()); } public function token() { return response()->json(auth('web')->user()->getRememberToken()); } public function tokenId() { if (!$token = auth('api')->tokenById(Auth::user()->id)) { return response()->json(['error' => 'Unauthorized'], 401); } return $this->respondWithToken($token); } }