From ded8e85c8589041aef7a5e60b77e1112f7dbc1bd Mon Sep 17 00:00:00 2001 From: T'JAMPENS QUENTIN p2406187 Date: Tue, 21 Oct 2025 22:18:15 +0200 Subject: [PATCH] Add get user route --- app/Http/Controllers/UserController.php | 17 +++++++++++++++++ routes/api.php | 2 ++ tests/Users/Get User.bru | 25 +++++++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 tests/Users/Get User.bru diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 43fe6d5..fe675f1 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -32,4 +32,21 @@ class UserController extends Controller return response()->json(['message' => $e->getMessage()]); } } + + public function getUser(Request $request, int $id): JsonResponse { + + try { + $user = User::find($id); + return response()->json([ + 'id' => $user->id, + 'name' => $user->name, + 'lastname' => $user->lastname, + 'email' => $user->email, + 'phone' => $user->phone ? $user->phone : "null", + ]); + } catch(\Exception $e) { + return response()->json(['message' => $e->getMessage()]); + } + + } } diff --git a/routes/api.php b/routes/api.php index 20a490e..485c9ff 100644 --- a/routes/api.php +++ b/routes/api.php @@ -18,3 +18,5 @@ Route::middleware('web')->post('/users/login', [AuthController::class, 'login']) Route::middleware(['web', 'auth:sanctum'])->post('/users/logout', [AuthController::class, 'logout']); Route::middleware(['web', 'auth:sanctum'])->delete('/users', [UserController::class, "delete"]); + +Route::middleware(['web', 'auth:sanctum'])->get('/users/{id}', [UserController::class, "getUser"]); diff --git a/tests/Users/Get User.bru b/tests/Users/Get User.bru new file mode 100644 index 0000000..75269e0 --- /dev/null +++ b/tests/Users/Get User.bru @@ -0,0 +1,25 @@ +meta { + name: Get User + type: http + seq: 3 +} + +get { + url: http://localhost:8000/api/users/5 + body: none + auth: inherit +} + +settings { + encodeUrl: true + timeout: 0 +} + +docs { + Permet de récupérer les informations d'un utilisateur. + Authetification demandée + + /api/users/{ID} + + ID = Identifiant de l'utilisateur cible +}