Как получить файл схемы в graphql с помощью spqr-spring-boot-starter?
Может ли кто-нибудь помочь мне, как получить файл схемы с помощью spqr-spring-boot-starter?
Я поискал решения в Интернете и нашел следующее: Как получить сгенерированный файл схемы.graphqls с помощью SPQR?
new SchemaPrinter(
// Tweak the options accordingly
SchemaPrinter.Options.defaultOptions()
.includeScalarTypes(true)
.includeExtendedScalarTypes(true)
.includeIntrospectionTypes(true)
.includeSchemaDefintion(true)
).print(schema);
Но я не уверен, что считать схемой? Поскольку я использую spqr-spring-boot-starter, я не пишу ничего, связанного с экземпляром GraphQLSchema.
Мне нужен файл схемы, чтобы включить автозаполнение в Postman. Пожалуйста, помогите, если вы что-нибудь знаете об этом, это будет действительно полезно. Благодарность!
1 ответ
В руководстве по spqr вам нужно определить схему graphQL в классе RestController, вы можете использовать этот объект для SchemaPrinter. Вы можете сделать его общедоступным и использовать в другом месте кода.
@Autowired
public GraphQLController(CheckConfigurationDemoResolver checkConfigurationDemoResolver) {
GraphQLSchema schema = new GraphQLSchemaGenerator()
schema = new GraphQLSchemaGenerator()
.withBasePackages("com.acme.mygraphqlproj")
.withOperationsFromSingleton(checkConfigurationDemoResolver)
.generate();
graphQL = GraphQL.newGraphQL(schema).build();
String schemaString = new SchemaPrinter().print(schema);
System.out.println("schemaString = " + schemaString);
}