#[non_exhaustive]pub struct Request {
pub query: String,
pub operation_name: Option<String>,
pub variables: Variables,
pub uploads: Vec<UploadValue>,
pub data: Data,
pub extensions: Extensions,
pub introspection_mode: IntrospectionMode,
/* private fields */
}
Expand description
GraphQL request.
This can be deserialized from a structure of the query string, the operation
name and the variables. The names are all in camelCase
(e.g.
operationName
).
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.query: String
The query source of the request.
operation_name: Option<String>
The operation name of the request.
variables: Variables
The variables of the request.
uploads: Vec<UploadValue>
Uploads sent with the request.
data: Data
The data of the request that can be accessed through Context::data
.
This data is only valid for this request
extensions: Extensions
The extensions config of the request.
introspection_mode: IntrospectionMode
Sets the introspection mode for this request (defaults to IntrospectionMode::Enabled).
Implementations§
Source§impl Request
impl Request
Sourcepub fn operation_name<T: Into<String>>(self, name: T) -> Self
pub fn operation_name<T: Into<String>>(self, name: T) -> Self
Specify the operation name of the request.
Sourcepub fn disable_introspection(self) -> Self
pub fn disable_introspection(self) -> Self
Disable introspection queries for this request.
Sourcepub fn only_introspection(self) -> Self
pub fn only_introspection(self) -> Self
Only allow introspection queries for this request.
Sourcepub fn parsed_query(&mut self) -> Result<&ExecutableDocument, ServerError>
pub fn parsed_query(&mut self) -> Result<&ExecutableDocument, ServerError>
Performs parsing of query ahead of execution.
This effectively allows to inspect query information, before passing request to schema for execution as long as query is valid.
Sourcepub fn set_parsed_query(&mut self, doc: ExecutableDocument)
pub fn set_parsed_query(&mut self, doc: ExecutableDocument)
Sets the parsed query into the request.
This is useful special with dynamic schema when the query has been parsed ahead of time. It can reduce performance overhead of parsing the query again.
Sourcepub fn set_upload(&mut self, var_path: &str, upload: UploadValue)
pub fn set_upload(&mut self, var_path: &str, upload: UploadValue)
Set a variable to an upload value.
var_path
is a dot-separated path to the item that begins with
variables
, for example variables.files.2.content
is equivalent
to the Rust code request.variables["files"][2]["content"]
. If no
variable exists at the path this function won’t do anything.