【GraphQL, lighthouse】笔记,错误处理等⑴【GraphQL, lighthouse】笔记、错误处理等。⑴

总结

以下是使用 Lighthouse 时遇到的错误处理备忘录。

环境

Laravel 6.0.4 和 Lighthouse 4.5

使用GraphQL将多个文件拆分为多个部分进行描述。

    ファイルの指定方法
* ディレクトリ構造
graphql/
|-- schema.graphql
|-- user.graphql
#import user.graphql
    複数ファイルの指定方法
* ディレクトリ構造
graphql/
  |-- schema.graphql
  |-- user/
    |-- 1.graphql
    |-- 2.graphql
#import user/*.graphql

当我在文件中确认时,我误以为是一条评论,所以我没有继续阅读。
虽然使用通配符很方便,但这种描述很奇怪。

设定所使用的模型

在app/lighthouse.php的命名空间中可以进行更改。

    'namespaces' => [
        'models' => ['App', 'App\\Models'],
        'queries' => 'App\\GraphQL\\Queries',
        'mutations' => 'App\\GraphQL\\Mutations',
        'subscriptions' => 'App\\GraphQL\\Subscriptions',
        'interfaces' => 'App\\GraphQL\\Interfaces',
        'unions' => 'App\\GraphQL\\Unions',
        'scalars' => 'App\\GraphQL\\Scalars',
        'directives' => ['App\\GraphQL\\Directives'],
    ],

关于模式缓存

$ php artisan lighthouse:clear-cache

您可以通过这样来清除缓存,但由于经常要输入,所以在本地开发中最好将LIGHTHOUSE_CACHE_ENABLE设为false,以禁用缓存。

    'cache' => [
        'enable' => env('LIGHTHOUSE_CACHE_ENABLE', true),
        'key' => env('LIGHTHOUSE_CACHE_KEY', 'lighthouse-schema'),
        'ttl' => env('LIGHTHOUSE_CACHE_TTL', null),
    ],
LIGHTHOUSE_CACHE_ENABLE=false

当graphql-playground无法在浏览器上启动时。

执行耗尽LocalStorage容量的查询后,似乎会导致浏览器无法启动。
通过开发人员工具等清除LocalStorage可以解决此问题,但如果查询执行并未结束而进行清除后,每次启动时都会再次执行查询,可以参考以下方法:
参考:https://gfx.hatenablog.com/entry/2017/09/27/002334

在特定的浏览器上持续显示”无法连接到服务器”。

尽管保持原状可能且没有问题,但我们也可以通过清除localStorage来解决。

bannerAds