Struct juniper::http::GraphQLRequest
source · [−]pub struct GraphQLRequest<S = DefaultScalarValue> where
S: ScalarValue, { /* private fields */ }
Expand description
The expected structure of the decoded JSON document for either POST or GET requests.
For POST, you can use Serde to deserialize the incoming JSON data directly into this struct - it derives Deserialize for exactly this reason.
For GET, you will need to parse the query string and extract “query”, “operationName”, and “variables” manually.
Implementations
sourceimpl<S> GraphQLRequest<S> where
S: ScalarValue,
impl<S> GraphQLRequest<S> where
S: ScalarValue,
sourcepub fn operation_name(&self) -> Option<&str>
pub fn operation_name(&self) -> Option<&str>
Returns the operation_name
associated with this request.
sourcepub fn new(
query: String,
operation_name: Option<String>,
variables: Option<InputValue<S>>
) -> Self
pub fn new(
query: String,
operation_name: Option<String>,
variables: Option<InputValue<S>>
) -> Self
Construct a new GraphQL request from parts
sourcepub fn execute_sync<'a, QueryT, MutationT, SubscriptionT>(
&'a self,
root_node: &'a RootNode<'_, QueryT, MutationT, SubscriptionT, S>,
context: &QueryT::Context
) -> GraphQLResponse<'a, S> where
S: ScalarValue,
QueryT: GraphQLType<S>,
MutationT: GraphQLType<S, Context = QueryT::Context>,
SubscriptionT: GraphQLType<S, Context = QueryT::Context>,
pub fn execute_sync<'a, QueryT, MutationT, SubscriptionT>(
&'a self,
root_node: &'a RootNode<'_, QueryT, MutationT, SubscriptionT, S>,
context: &QueryT::Context
) -> GraphQLResponse<'a, S> where
S: ScalarValue,
QueryT: GraphQLType<S>,
MutationT: GraphQLType<S, Context = QueryT::Context>,
SubscriptionT: GraphQLType<S, Context = QueryT::Context>,
Execute a GraphQL request synchronously using the specified schema and context
This is a simple wrapper around the execute_sync
function exposed at the
top level of this crate.
sourcepub async fn execute<'a, QueryT, MutationT, SubscriptionT>(
&'a self,
root_node: &'a RootNode<'a, QueryT, MutationT, SubscriptionT, S>,
context: &'a QueryT::Context
) -> GraphQLResponse<'a, S> where
QueryT: GraphQLTypeAsync<S>,
QueryT::TypeInfo: Sync,
QueryT::Context: Sync,
MutationT: GraphQLTypeAsync<S, Context = QueryT::Context>,
MutationT::TypeInfo: Sync,
SubscriptionT: GraphQLType<S, Context = QueryT::Context> + Sync,
SubscriptionT::TypeInfo: Sync,
S: ScalarValue + Send + Sync,
pub async fn execute<'a, QueryT, MutationT, SubscriptionT>(
&'a self,
root_node: &'a RootNode<'a, QueryT, MutationT, SubscriptionT, S>,
context: &'a QueryT::Context
) -> GraphQLResponse<'a, S> where
QueryT: GraphQLTypeAsync<S>,
QueryT::TypeInfo: Sync,
QueryT::Context: Sync,
MutationT: GraphQLTypeAsync<S, Context = QueryT::Context>,
MutationT::TypeInfo: Sync,
SubscriptionT: GraphQLType<S, Context = QueryT::Context> + Sync,
SubscriptionT::TypeInfo: Sync,
S: ScalarValue + Send + Sync,
Execute a GraphQL request using the specified schema and context
This is a simple wrapper around the execute
function exposed at the
top level of this crate.
Trait Implementations
sourceimpl<S: Clone> Clone for GraphQLRequest<S> where
S: ScalarValue,
impl<S: Clone> Clone for GraphQLRequest<S> where
S: ScalarValue,
sourcefn clone(&self) -> GraphQLRequest<S>
fn clone(&self) -> GraphQLRequest<S>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<S: Debug> Debug for GraphQLRequest<S> where
S: ScalarValue,
impl<S: Debug> Debug for GraphQLRequest<S> where
S: ScalarValue,
sourceimpl<'de, S> Deserialize<'de> for GraphQLRequest<S> where
S: ScalarValue,
InputValue<S>: Deserialize<'de> + Serialize,
impl<'de, S> Deserialize<'de> for GraphQLRequest<S> where
S: ScalarValue,
InputValue<S>: Deserialize<'de> + Serialize,
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl<S: PartialEq> PartialEq<GraphQLRequest<S>> for GraphQLRequest<S> where
S: ScalarValue,
impl<S: PartialEq> PartialEq<GraphQLRequest<S>> for GraphQLRequest<S> where
S: ScalarValue,
sourcefn eq(&self, other: &GraphQLRequest<S>) -> bool
fn eq(&self, other: &GraphQLRequest<S>) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &GraphQLRequest<S>) -> bool
fn ne(&self, other: &GraphQLRequest<S>) -> bool
This method tests for !=
.
sourceimpl<S> Serialize for GraphQLRequest<S> where
S: ScalarValue,
S: Serialize,
impl<S> Serialize for GraphQLRequest<S> where
S: ScalarValue,
S: Serialize,
impl<S> StructuralPartialEq for GraphQLRequest<S> where
S: ScalarValue,
Auto Trait Implementations
impl<S> RefUnwindSafe for GraphQLRequest<S> where
S: RefUnwindSafe,
impl<S> Send for GraphQLRequest<S> where
S: Send,
impl<S> Sync for GraphQLRequest<S> where
S: Sync,
impl<S> Unpin for GraphQLRequest<S> where
S: Unpin,
impl<S> UnwindSafe for GraphQLRequest<S> where
S: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more