Class GraphQlHttpHandler
java.lang.Object
org.springframework.graphql.server.webmvc.AbstractGraphQlHttpHandler
org.springframework.graphql.server.webmvc.GraphQlHttpHandler
GraphQL handler to expose as a WebMvc functional endpoint via
 
RouterFunctions.- Since:
 - 1.0.0
 - Author:
 - Rossen Stoyanchev, Brian Clozel
 
- 
Field Summary
Fields inherited from class org.springframework.graphql.server.webmvc.AbstractGraphQlHttpHandler
logger - 
Constructor Summary
ConstructorsConstructorDescriptionGraphQlHttpHandler(WebGraphQlHandler graphQlHandler) Create a new instance.GraphQlHttpHandler(WebGraphQlHandler graphQlHandler, @Nullable HttpMessageConverter<?> converter) Create a new instance with a custom message converter for GraphQL payloads. - 
Method Summary
Modifier and TypeMethodDescriptionbooleanReturn whether this HTTP handler should use HTTP 200 OK responses if an error occurs before the GraphQL request execution phase starts; for example, if JSON parsing, GraphQL document parsing, or GraphQL document validation fail.protected ServerResponseprepareResponse(ServerRequest request, reactor.core.publisher.Mono<WebGraphQlResponse> responseMono) Prepare theServerResponsefor the given GraphQL response.protected HttpStatusselectResponseStatus(WebGraphQlResponse response, MediaType responseMediaType) voidsetHttpOkOnValidationErrors(boolean httpOkOnValidationErrors) Deprecated, for removal: This API element is subject to removal in a future version.Methods inherited from class org.springframework.graphql.server.webmvc.AbstractGraphQlHttpHandler
getWriteFunction, handleRequest 
- 
Constructor Details
- 
GraphQlHttpHandler
Create a new instance.- Parameters:
 graphQlHandler- common handler for GraphQL over HTTP requests
 - 
GraphQlHttpHandler
public GraphQlHttpHandler(WebGraphQlHandler graphQlHandler, @Nullable HttpMessageConverter<?> converter) Create a new instance with a custom message converter for GraphQL payloads.If no converter is provided, the handler will use
the one configured for web use.- Parameters:
 graphQlHandler- common handler for GraphQL over HTTP requestsconverter- the converter to use to read and write GraphQL payloads
 
 - 
 - 
Method Details
- 
isHttpOkOnValidationErrors
public boolean isHttpOkOnValidationErrors()Return whether this HTTP handler should use HTTP 200 OK responses if an error occurs before the GraphQL request execution phase starts; for example, if JSON parsing, GraphQL document parsing, or GraphQL document validation fail.This option only applies to
MediaTypes.APPLICATION_GRAPHQL_RESPONSEresponses, as legacyMediaType.APPLICATION_JSONresponses always use HTTP 200 OK in such cases. Enabling this option means the server will not conform to the "GraphQL over HTTP specification".By default, this is set to
false.- Since:
 - 1.4.0
 - See Also:
 
 - 
setHttpOkOnValidationErrors
@Deprecated(since="1.4.0", forRemoval=true) public void setHttpOkOnValidationErrors(boolean httpOkOnValidationErrors) Deprecated, for removal: This API element is subject to removal in a future version.since 1.4, will be madefalsepermanently in a future releaseSet whether this HTTP handler should use HTTP 200 OK responses if an error occurs before the GraphQL request execution phase starts.- Parameters:
 httpOkOnValidationErrors- whether "HTTP 200 OK" responses should always be used- Since:
 - 1.4.0
 - See Also:
 
 - 
prepareResponse
protected ServerResponse prepareResponse(ServerRequest request, reactor.core.publisher.Mono<WebGraphQlResponse> responseMono) Description copied from class:AbstractGraphQlHttpHandlerPrepare theServerResponsefor the given GraphQL response.- Specified by:
 prepareResponsein classAbstractGraphQlHttpHandler- Parameters:
 request- the current requestresponseMono- the GraphQL response- Returns:
 - the server response
 
 - 
selectResponseStatus
 
 - 
 
falsepermanently in a future release