API Login dan Logout
route dan api controller// route api.php
Route::post('login', [AuthApi::class, 'login']);
Route::post('logout', [AuthApi::class, 'logout'])->middleware('auth:sanctum');
// controller AuthApi.php
public function login(Request $request)
{
$request->validate([
'email' => 'required|email|string',
'password' => 'required'
]);
$user = User::where('email', $request->email)->first();
if (!$user && !Hash::check($request->password, $user->password)) {
return response()->json([
'success' => false,
'message' => 'invalid email or password',
'data' => null,
]);
}
$token = $user->createToken('Api Token')->plainTextToken;
return response()->json([
'status' => true,
'message' => 'Login successful',
'data' => [
'access_token' => $token,
'token_type' => 'Bearer',
'user' => $user,
],
]);
}
public function logout(Request $request)
{
$request->user()->currentAccessToken()->delete();
return response()->json([
'success' => true,
'data' => null,
'message' => 'berhasil logout'
]);
}Editor is loading...
Leave a Comment