Laravel API 프로젝트 12단계 - 유저 조회 API

Route::get('/users/{id}', [UserController::class, 'getUserInfo']);

 

url 지정을 해주는 Route를 routes/api.php 파일에 추가해줍니다.

 

/users/1을 입력하면 id 변수에 1이 들어가서 UserController의 getUserInfo 메서드에 전달됩니다.

 

root@80612f23b0cf:/var/www/html/laravel-api# php artisan make:controller UserController
PHP Warning:  Module "pdo_mysql" is already loaded in Unknown on line 0

   INFO  Controller [app/Http/Controllers/UserController.php] created successfully.

 

위의 명령어로 UserController 파일을 생성합니다.

 

<?php

namespace App\Http\Controllers;

use App\Models\User;

class UserController extends Controller
{
    public function getUserInfo(string $id): Response
    {
        $user = User::find($id);
        return response($user, Response::HTTP_OK);
    }
}

 

생성된 UserController (laravel-api/app/Http/Controllers/UserController.php) 파일에 위의 코드를 추가해줍니다.

 

/users/1 API를 호출하면 id가 1인 유저를 데이터베이스에서 모두 조회한 후 첫번째 유저의 정보를 JSON 형식으로 클라이언트에게 전달해줍니다.

 

root@webgori-1:~# curl localhost/api/users/1
{"id":1,"name":"Breanna Kohler","email":"walter52@example.org","email_verified_at":"2024-02-07T07:21:10.000000Z","created_at":"2024-02-07T07:21:11.000000Z","updated_at":"2024-02-07T07:21:11.000000Z"}

 

/api/users/1 API를 호출해보니 더미 데이터로 생성한 유저 정보가 잘 나옵니다.