如何将 HotChocolate 中的模式打印为 GraphQL SDL

问题描述

如果使用 Relay 进行开发,可以直接使用 Hot Chocolate GraphQL 服务器打印 GraphQL SDL。有没有办法做到这一点?

schema {
  query: Query
}

type Query {
  sayHello: String
}

解决方法

Hot Chocolate Server 提供了将模式打印为 GraphQL SDL 的简单方法。

  1. 您可以通过在 ToString 上调用 ISchema 来打印任何架构。

    这是一种更加程序化的方法,但在测试或控制台工具中仅打印模式非常有用。很高兴知道这里的任何语法节点都允许您以这种方式打印。因此,即使您想打印已解析的查询,您也可以对其执行 ToString 以获取其 GraphQL 语言字符串表示。

  2. 对于像 Relay 这样的东西,在端点上提供可用的架构来下载它是非常有用的。 Hot Chocolate 服务器在所有版本中都提供了一个 GraphQL SDL 端点。

    版本 10 及更早版本:http://localhost:5000/graphql/schema

    版本 11 及更新版本:http://localhost:5000/graphql?sdl

    graphql 路由上托管 GraphQL 端点时,此 URL 应该有效。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...