← 패키지 목록
Laravel
laravel-json-api/laravel
제출자 Laravel Korea Discovery Bot
최신 vv5.3.0라이센스 MIT배포 2026년 11월 10일
검색
Laravel 애플리케이션을 위한 JSON:API.
웹 아티즌을 위한 JSON:API
Laravel 애플리케이션에서 JSON:API 표준을 준수하는 풍부한 기능의 API를 구현해 보세요. 표준을 따르는 다음 API를 지금 바로 만들 수 있습니다.
왜 JSON:API와 Laravel JSON:API를 사용해야 할까요?
좋은 질문입니다! Denisa Halmaghi의 훌륭한 글에서 소개한 이유들을 정리하면 다음과 같습니다.
왜 JSON:API인가요?
- 표준화되어 일관성 있는 API를 만들 수 있습니다.
- 기능이 풍부합니다. 대표적으로 스파스 필드셋(필요한 필드만 가져오기), 필터링, 정렬, 페이지네이션, 관계의 즉시 로딩(eager loading,
include를 통해 N+1 문제를 해결)을 지원합니다. - 이해하기 쉽습니다.
왜 Laravel JSON:API인가요?
- 개발 시간을 크게 줄여 줍니다.
- 유지보수하기 좋은 코드를 작성할 수 있습니다.
- 훌륭하고 방대한 문서를 제공합니다.
- 강력한 컨벤션을 갖추면서도 세부 설정을 자유롭게 바꿀 수 있습니다.
- 정책(policy)과 폼 리퀘스트(form request) 같은 Laravel 기본 기능을 활용하므로 개발자가 쉽게 적응할 수 있습니다.
- Nova 스타일의 아름답고 표현력 있는 스키마를 제공합니다.
- 표현력 있는 테스트 헬퍼로 모든 기능을 테스트할 수 있습니다.
class PostSchema extends Schema
{
/**
* The model the schema corresponds to.
*
* @var string
*/
public static string $model = Post::class;
/**
* The maximum include path depth.
*
* @var int
*/
protected int $maxDepth = 3;
/**
* Get the resource fields.
*
* @return array
*/
public function fields(): array
{
return [
ID::make(),
BelongsTo::make('author')->type('users')->readOnly(),
HasMany::make('comments')->readOnly(),
Str::make('content'),
DateTime::make('createdAt')->sortable()->readOnly(),
DateTime::make('publishedAt')->sortable(),
Str::make('slug'),
BelongsToMany::make('tags'),
Str::make('title')->sortable(),
DateTime::make('updatedAt')->sortable()->readOnly(),
];
}
/**
* Get the resource filters.
*
* @return array
*/
public function filters(): array
{
return [
WhereIdIn::make($this),
WhereIn::make('author', 'author_id'),
];
}
/**
* Get the resource paginator.
*
* @return Paginator|null
*/
public function pagination(): ?Paginator
{
return PagePagination::make();
}
}문서
공식 웹사이트 laraveljsonapi.io를 참고하세요.
튜토리얼
JSON:API나 Laravel JSON:API가 처음이신가요? Laravel JSON:API 튜토리얼로 시작해 보세요!
튜토리얼을 따라 하면서 JSON:API 표준을 준수하는 API를 갖춘 블로그 애플리케이션을 만들어 볼 수 있습니다.
설치
Composer로 설치합니다.
composer require laravel-json-api/laravel자세한 설치 방법은 공식 문서를 참고하세요.
업그레이드
업그레이드할 때는 이 패키지와 관련 패키지를 함께 업그레이드하는 것이 일반적입니다. 권장 방법은 다음과 같습니다.
composer require laravel-json-api/laravel --no-updatecomposer require laravel-json-api/testing --dev --no-updatecomposer up "laravel-json-api/*" cloudcreativity/json-api-testing예제 애플리케이션
이 패키지를 사용하는 Laravel 예제 애플리케이션은 튜토리얼 애플리케이션에서 확인할 수 있습니다.
라이선스
Laravel JSON:API는 MIT 라이선스로 배포되는 오픈소스 소프트웨어입니다.