Rest graphql客户端上的管理员返回空资源

Rest graphql客户端上的管理员返回空资源,graphql,admin-on-rest,Graphql,Admin On Rest,我正试图通过graphql客户端在rest上与管理员打交道。我正在使用“aor graphql客户端GraphTool”和LaunchPad上的端点。 调试应用程序时会显示分配给资源密钥的零长度数组。类型/查询看起来不错,所以我认为内省可以正常工作 introspectionResults {types: Array(39), queries: Array(9), resources: Array(0)} 我已经在我的端点中实现了getPageOf[Resource]和get[Resource

我正试图通过graphql客户端在rest上与管理员打交道。我正在使用“aor graphql客户端GraphTool”和LaunchPad上的端点。 调试应用程序时会显示分配给资源密钥的零长度数组。类型/查询看起来不错,所以我认为内省可以正常工作

introspectionResults {types: Array(39), queries: Array(9), resources: Array(0)}
我已经在我的端点中实现了getPageOf[Resource]和get[Resource]查询,但是如果我需要做更多的事情,文档中还不清楚

我正在next.js react组件中初始化客户端,如文档所示:

componentDidMount() {
  buildApolloClient({
    clientOptions: {
      uri: 'https://xxxxxxxxx.lp.gql.zone/graphql'
    }
  }).then((restClient) => {
    this.setState({ restClient });
  });
}
我还尝试禁用内省并传入自定义查询,但在本例中,内省结果为null

我想知道以下几点:

  • launchpad是否与GraphTool客户端兼容
  • 我是否需要在客户端初始化的配置中添加更多内容来填充资源
  • rest上的管理员是否是它声称的银弹,即它能否通过内省查询破译我的模式并呈现数据

我真的希望如此,因为这东西看起来很酷

您需要内省或schema.js文件来使用graphql服务器的可用资源和类型初始化rest上的管理(aor)。AOR做了很多工作,但由于graphql在不断发展,也没有标准化所有内容(例如预期变量或它们的命名约定),因此您必须调整graphql的简单数据提供程序(请参见graphql的示例/演示)或编写自己的数据提供程序


我是如何开始的:如果您刚刚开始使用一个新的graphql服务器/模式,那么您自己的示例将基于示例/演示(如AOR文档中所述)。确保使用存储库的“下一个”分支。首先,逐步浏览将从示例中调用的ra数据图ql/src/index.js和ra数据图ql simple/src/index.js。这将显示自省结果与默认/简单数据提供程序不匹配的位置

如果您的内省返回一个空的
参考资料
,您将不得不为您的内省函数提供一个适配器

默认情况下,
react admin
需要特定的架构形状(更多详细信息)

例如,对于
Post
资源,您应该使用
allPosts
查询来获取
Post

类型查询{
Post(id:id!):Post
所有帖子(page:Int,perPage:Int,sortField:String,sortOrder:String,filter:PostFilter):[Post]
_allPostsMeta(page:Int,perPage:Int,sortField:String,sortOrder:String,filter:PostFilter):ListMetadata
}
如果在后端,您没有使用
allPosts
,而是使用
postList
,例如,您可以使用内省选项将
allPosts
映射到
postList

导出常量内省操作名称={
//模式,
[获取列表]:资源=>{
返回`${influction.camelize(resource.name,true)}List`;
},
...
};
同样适用于
创建
获取一个
获取多个
获取多个参考
更新
删除


您可以找到一个很好的自定义自省示例

谢谢,但不是问题所在。内省很有效。我的模式中的graphql(标准)接口类型导致AOR拒绝该模式。如果您声称支持GrahpQL,则接口不是可选的。。。