Toshio Blog

Lumen Lighthouse Basecontroller

September 20, 2018

LumenでNuwave\Lighthouseを使うときの注意事項です。

問題

コントローラーのエントリポイントにデフォルト設定のまま使うと、期待しない挙動が度々あったので調査の上修正しました。

解決方法

config/lighthouse.php

'controller' => 'Nuwave\Lighthouse\Support\Http\Controllers\GraphQLController@query',

Nuwave\Lighthouse\Support\Http\Controllers\GraphQLControllerIlluminate\Routing\Controller を継承していますが Laravel\Lumen\Routing\Controller を継承する必要があります。

修正方法

config/lighthouse.php

'controller' => 'App\Http\GraphQL\GraphQLController@query', を設定して、App\Http\GraphQL\GraphQLControllerを作成します。

中身は Nuwave\Lighthouse\Support\Http\Controllers\GraphQLController をコピペです。そして継承先を App\Http\Controllers\Controllerにします。

正常動作のための一設定でした。


Written by Ta Toshio who lives and works in Saitama, Japan .You should follow him on Twitter