Lighthouseへの移行
このセクションは、既存のAPIプロジェクトをLighthouseに移行する方法についてのアドバイスを説明します。
スキーマ定義
Lighthouseを始めるために最も重要なことは、GraphQLスキーマ定義言語を使用して記述されたスキーマです。
すでに別のライブラリを使ったのサーバーが稼働している場合は、イントロスペクションを使用してスキーマを取得し、ファイルに保存できます。
また、一般的に便利な簡易ツールとして、graphql-cliがあります。
npm install -g graphql-cli
graphql init
graphql get-schema --endpoint=example.com/graphql --output=schema.graphql
これまでプログラムのコードで行っていた型定義は、ほとんどスキーマから推測できます。ですが時には、追加のアノテーションやPHPの実装が必要な場合もあります。 型の定義方法
リゾルバのしくみ
Folkloreatelier/laravel-graphql、rebing/laravel-graphqlや、その他webonyx/graphql-phpをベースにしたライブラリから移行しようとする場合、既存のコードの多くを再利用することができるはずです。
また、Lighthouseの型のレジストリに既存の型を登録することができ、そうするとSDLで書き直す必要はありません: PHP のネイティブ型を使用する
リゾルバ関数は、同じ共通のシグネチャを共有します。そのため、クエリ/ミューテーション用に書いたロジックを再利用することができるはずです。
Lighthouseは、基本的なCRUD操作など、多くの共通タスクを簡素化します。