Closed btielen closed 1 year ago
In case this PR will get merged, it would be nice to update the projects documentation and book to point out an integration for Axum exists.
Thanks for the feedback, I will take a look at it tomorrow.
:wave: Incredible work :star_struck: , Is there any plan to merge & release it ?
Any blockers on merging this?
Hey, are you going to push Axum integration? I loved Axum when I tried it, and I want to use something I already know when using GraphQL
There are still outstanding review comments here...
@btielen are you able to fix those changes so to merge this?
I plan to finish it in next few weeks.
graphql_ws::WebsocketError
changes, as they're clearly behind theme of this PR.Clone
ing of RootNode
. Such refactoring is better to be done properly in a separate PR (if makes sense), as touches all the integration crates.juniper_axum
.juniper_axum
.axum
(without subscriptions yet).GetQueryVariables
and JsonRequestBody
, which duplicated GraphQLRequest
.extractor::JuniperRequest
with ScalarValue
.graphql-ws
GraphQL over WebSocket Protocol implementation.graphql-transport-ws
GraphQL over WebSocket Protocol implementation.graphql-transport-ws
and legacy graphql-ws
GraphQL over WebSocket Protocol implementations.graphql
, subscriptions::ws
, subscriptions::graphql_ws
and subscriptions::graphql_trasnport_ws
handlers.@LegNeato I'm going to merge this in next few days. Take a final look, if you would like. All the stuff is ready, only minor CI issues are left to be resolved.
This PR provides an integration for Axum including subscriptions (fixes #986)
juniper::http::tests::run_http_test_suite
juniper::http::tests::run_ws_test_suite
Get started
Run
cargo run -p juniper_axum --example simple
from the root directory, and navigate to127.0.0.1:3000
in your browser.Other changes
Minor changes were made in other libraries
Sink
forjuniper_graphql_ws::Connection
, so the code doesn't panic.juniper::http::tests::run_ws_test_suite
to test POST requests with variablesDiscussion
juniper::http::GraphQLRequest
now has a property variables with typeOption<InputValue<S>>
, I think (but not sure) things would be easier if this has the typeVariables<S>
operation_name
definedAny help polishing this PR is appreciated :)