
API Resources & Authentication
API routes, resource controllers, API resources, 페이지네이션, rate limiting, CORS, Sanctum (SPA/tokens), Passport/OAuth2, scopes
1Laravel에서 API 라우트는 기본적으로 어디에 정의합니까?
Laravel에서 API 라우트는 기본적으로 어디에 정의합니까?
답변
API 라우트는 routes/api.php 파일에 정의합니다. 이러한 라우트에는 자동으로 /api 접두사가 붙고 기본적으로 api 미들웨어가 적용됩니다. routes/web.php에 정의된 web 라우트와 달리 API 라우트는 세션을 사용하지 않으며 stateless 호출(REST, GraphQL 등)을 위해 설계되었습니다.
2API용 resource controller를 생성하는 Artisan 명령어는 무엇입니까?
API용 resource controller를 생성하는 Artisan 명령어는 무엇입니까?
답변
php artisan make:controller PostController --api 명령어는 API에 최적화된 resource controller를 생성합니다. 이 controller에는 index, store, show, update, destroy 메서드가 포함되지만 create와 edit 메서드는 포함되지 않습니다(이 메서드들은 web에서 폼을 표시하기 위한 것으로 REST API에는 불필요함). 이 --api 옵션은 API 전용 컨텍스트에서 불필요한 코드를 피하게 해줍니다.
3Laravel에서 API Resource란 무엇입니까?
Laravel에서 API Resource란 무엇입니까?
답변
API Resource는 Eloquent 모델을 API 응답용 JSON 배열로 변환하는 변환 클래스입니다. 어떤 속성을 노출할지 정밀하게 제어하고, 계산된 필드 추가, 민감한 데이터(비밀번호) 숨김, 관계 관리를 할 수 있습니다. 이는 데이터베이스 구조를 API 응답에서 분리하고 출력 포맷의 일관성을 보장합니다.
User 모델용 API Resource를 어떻게 생성합니까?
API Resource로 페이지네이션된 컬렉션을 어떻게 반환합니까?
+23 면접 질문