Laravel에서 GraphQL 서버를 만들 수있는 Lighthouse의 설명 (도입)

4817 단어 GraphQL라라벨
GraphQL 서버를 작성하게 되어, Lighthose를 이용했으므로 비망록과 간단한 해설.
이번에는 도입편

Lighthouse



공식 : htps : // / gh 쇼세 php. 코m/
Laravel에서 GraphQL을 이용하는 라이브러리.

소개


  • 설치
  • composer require nuwave/lighthouse
    
  • 기본 스키마 게시
  • php artisan vendor:publish --provider="Nuwave\Lighthouse\LighthouseServiceProvider" --tag=schema
    

    생성되는 스키마 파일

    graphql/schema.graphql
    "A date string with format `Y-m-d`, e.g. `2011-05-23`."
    scalar Date @scalar(class: "Nuwave\\Lighthouse\\Schema\\Types\\Scalars\\Date")
    
    "A datetime string with format `Y-m-d H:i:s`, e.g. `2018-05-23 13:43:32`."
    scalar DateTime @scalar(class: "Nuwave\\Lighthouse\\Schema\\Types\\Scalars\\DateTime")
    
    "A datetime and timezone string in ISO 8601 format `Y-m-dTH:i:sO`, e.g. `2020-04-20T13:53:12+02:00`."
    scalar DateTimeTz @scalar(class: "Nuwave\\Lighthouse\\Schema\\Types\\Scalars\\DateTimeTz")
    
    type Query {
        users: [User!]! @paginate(defaultCount: 10)
        user(id: ID @eq): User @find
    }
    
    type User {
        id: ID!
        name: String!
        email: String!
        created_at: DateTime!
        updated_at: DateTime!
    }
    
  • config 파일 만들기
  • php artisan vendor:publish --provider="Nuwave\Lighthouse\LighthouseServiceProvider" --tag=config
    

    위 명령은 config/lighthouse.php에 파일을 만듭니다.
    엔드포인트 변경이나 여러 가지 설정이 가능합니다.
  • DevTool GraphQL-PlayGround

  • GraphQL 스키마 확인, 쿼리를 실행할 수 있는 편리한 Tool
    덧붙여서 Postman 등 클라이언트 툴도 GraphQL에 대응하고 있습니다.
    composer require --dev mll-lab/laravel-graphql-playground
    

    docker 및 laravel 빌드인 서버를 시작하여 アプリURL/graphql-playground에 액세스하여 사용할 수 있습니다.


    공식 보면 쓰여진 굉장히 얇은 내용입니다만 도입은 끝
    다음 번에는 lighthouse의 지시문을 정리하고 싶습니다.

    좋은 웹페이지 즐겨찾기