学习 GraphQL 时候遇到的极小极小的问题
在学习 GraphQL
的时候,使用 GraphIQL Feen
进行接口数据请求。
按照 php 版 GraphQL 的实现之一 的 Getting Started 步骤进行学习的时候,无论如何都会报错。无法正常获取到服务器端定义的接口数据。
原因如下:
graphiql feen 默认会传入 variableValues。按照手册中的代码$variableValues = isset($input['variables']) ? $input['variables'] : null;
获取 $variableValues 会出现 php 服务器端代码报如下错误。
对 PostMan
进行如下设置
请求方式 POST
Headers: 添加 Content-Type:application/json
Body: 修改为 raw 请求方式
代码中打印传入 dd($variableValues);
可看到数据不为空。但传入的不是需要的数据
或
将会获得如下报错:
解决办法:多种多样 我选择将无法处理的设置为 null
。
$variableValues = empty($input['variables']) ? null : !in_array($input['variables'], ['{', '{}']) ? $input['variables'] : null;
代码就可以正常运行了:
Perfect, congratulations to you. :)
本作品采用《CC 协议》,转载必须注明作者和本文链接
这是我看到第4个GraphQL文章