问题标签 [graphql-php]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1103 浏览

php - 如何处理 webonyx/graphql-php 中的自定义错误?

我正在使用 webonyx/graphql-php 创建一些 graphql 查询,并且文档非常不完整,解释了如何在解析查询期间处理自定义错误。例如,如果用户应用程序发送查询以查找某些记录,我想返回一个自定义错误“未找到客户”,而不仅仅是这个丑陋的结构

我读了很多次文档(https://webonyx.github.io/graphql-php/error-handling/),但不明白该怎么做。请问你能帮帮我吗?

谢谢!

0 投票
2 回答
6967 浏览

laravel-5.7 - 在 Router.php 第 366 行:传递给 Illuminate\Routing\Router::group() 的参数 1 必须是数组类型,

我已经更新了Laravel,现在我的应用程序没有运行。v5.7v5.8

因为这个问题,我更新了它:composer require rebing/graphql-laravel failed

我解决了包不兼容的问题,但现在 Laravel 崩溃了:

我怀疑 Laravel 的团队改变了这种方法的坚定:

照亮\路由\Router.php

这是我的composer.json文件的当前内容:

我认为问题可能出在这个文件中: app/Providers/RouteServiceProvider.php

不知道现在group()方法的正确格式是什么。任何人都可以帮我解决这个问题吗?提前致谢!

0 投票
3 回答
1714 浏览

laravel - Laravel Lighthouse - 使用 TypeRegistry 以编程方式添加类型。具体如何?

在文档中尝试这部分没有成功,并且在互联网上没有找到任何好的参考。我想动态添加模式类型,并认为可以通过 GraphQLServiceProvider 中的 typeregistry 添加它们,但是当我尝试在 graphql-playground 中使用该类型时,它显示在模式错误中找不到类型。我注册的类型似乎没有加载到我不知道该怎么做的模式中。

我尝试过的事情:将提供程序添加到我的应用程序配置中。跑“作曲家转储自动加载”清除缓存和配置。

这是我的 GraphQLServiceProvider 代码

这是我的架构

0 投票
0 回答
538 浏览

laravel - Laravel Lighthouse - 在 handleBuilder 方法中接收 Eloquent Builder 而不是 Query Builder?

有没有办法在创建自定义时接收实例\Illuminate\Database\Eloquent\Builder而不是方法?\Illuminate\Database\Query\BuilderhandleBuilderArgBuilderDirective

这个例子

0 投票
2 回答
2664 浏览

php - GraphQL 错误:方法不允许。必须是以下之一: 选项

我是 GraphQL 的新手。我需要用 PHP 和 GraphQL 制作一个 API。我遵循了本教程: https ://medium.com/swlh/setting-up-graphql-with-php-9baba3f21501

一切正常,但打开 URL 时,出现此错误:

我将此添加到索引页面:

但问题没有解决。也许这里缺少一些东西:

0 投票
1 回答
479 浏览

curl - 使用 PHP 和 Curl 绘制 ql

我的身份验证工作正常,我什至在邮递员中测试了我的查询,原因是我似乎错过了我的查询返回

返回

我是图形 ql 的新手,我在这里缺少什么?

0 投票
2 回答
437 浏览

php - lighthouse php 使用 eloquent 模型访问器和修改器

我在我的 laravel 应用程序之上使用 lighthouse for graphql。我知道如何定义类型。但是如何在模式的类型定义中使用模型访问器呢?例如,我有这样的类型使用

但是我在数据库表中没有name列,但我的 eloquent 模型中有一个名称访问器,我想在这种情况下使用它而不是奇怪的列名。有什么方法可以使用模型访问器吗?

0 投票
1 回答
452 浏览

laravel-lighthouse - Laravel Lighthouse 在哪里放置非根字段解析器?

在灯塔文档的示例中,他们给出了解析非根字段的示例方法。

所以我的猜测是灯塔会搜索一个 resolveUser{Field} 方法,如果它存在就调用它。但是我在哪里放置方法?示例中没有类名或命名空间。

类型查询 @guard(with: ["api"]) { 我:用户!@auth }

文档网址:

https://lighthouse-php.com/4.9/the-basics/fields.html#resolving-non-root-fields

0 投票
1 回答
168 浏览

graphql - GraphQL:具有标量和 InputObjectType 的 UnionType

我有一个存储一些视频游戏的数据库。他们每个人都有三个发布日期:一个在欧洲,另一个在美国,最后一个在日本。

我想允许我的 GraphQL API 的用户根据这些日期搜索游戏。例如,为了获取在欧美发行但在日本发行的游戏的名称和发行日期,我们可以编写这样的查询:

因此,如果我们要获取所有地区发布的游戏,查询将是这个:

当所有布尔值都具有相同的值时,我想简化查询,以便我们可以编写以下代码:

为了做到这一点,我尝试了字段的这种类型定义has_been_released(使用graphql-php):

但是当我这样做时,GraphiQL 会抛出这个错误:

错误:自省必须为可能的类型提供对象类型。在 getObjectType (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/dist/chromeiql.js:72489:80) at Array.map () at buildUnionDef (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/dist/chromeiql.js:72566:47) 在 buildType (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/dist/chromeiql.js:725

所以我认为我的类型定义有问题,但我不明白为什么。有任何想法吗?

tl;dr:我想要一个 GraphQL 字段,它可以接受标量值具有此标量类型的 InputObject 作为字段。甚至可能吗?

提前致谢!

0 投票
1 回答
613 浏览

laravel - 如何在 lighthouse-php 中使用 @method 指令正确地提供自定义查询?

我正在使用 Lighthouse 构建一个库存应用程序,并努力掌握使用复杂逻辑按需提供自定义查询的概念。

这是我正在尝试创建的近似查询:

我正在考虑创建一个对象,它有不同的方法来聚集这些对象。我研究了创建自定义类型,就像这样

我注册了提供者但不知道如何查询这个类型?

还是我做错了,有更好的方法吗?

我必须以schema.graphql某种方式添加它吗?

我可以创建一个自定义查询,但是我必须在__invoke方法中同时要求所有统计信息,我宁愿按需进行。例如,如果我提出这样的请求

我会调用这两个方法执行。