-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: apollo graphql link and server #225
Conversation
runHttpQuery([], { | ||
method: "POST", | ||
options: () => { | ||
return this.createGraphQLServerOptions(payload); | ||
}, | ||
query, | ||
request: new Request("/graphql", { | ||
headers: new Headers(), | ||
method: "POST", | ||
}), | ||
}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From what I can tell, runHttpQuery
seems to be the best entry point into Apollo's logic for handling a query. This feels strange for our use case, seeing as we are not HTTP, so I'll likely reach out to Apollo and see if there is a better way to process a query that is completely divorced from HTTP concepts.
c436421
to
4748c68
Compare
Moving this PR out of draft is pending investigating Apollo's |
47455e4
to
ac6ac87
Compare
I will fix DCO on merge. |
bb1efc5
to
039d96e
Compare
Signed-off-by: Kevin Viglucci <[email protected]>
* fix: clear buffer when allocating for custom metadata header * test: add composite metadata tests - encodeAndAddCustomMetadata - encodeCustomMetadataHeader Signed-off-by: Kevin Viglucci <[email protected]>
- [email protected] - [email protected] - [email protected] - [email protected] Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
* feat: support optional metadata in rxjs adapter requesters Signed-off-by: Kevin Viglucci <[email protected]> * chore(release): release - rsocket-adapter-rxjs@1.0.0-alpha-rxjs-adapter-optional-metadata.0 - rsocket-composite-metadata@1.0.0-alpha-rxjs-adapter-optional-metadata.0 - [email protected] - [email protected] - [email protected] - [email protected] - [email protected] - rsocket-websocket-client@1.0.0-alpha-rxjs-adapter-optional-metadata.0 - rsocket-websocket-server@1.0.0-alpha-rxjs-adapter-optional-metadata.0 Signed-off-by: Kevin Viglucci <[email protected]>
- [email protected] - [email protected] - [email protected] - [email protected] - [email protected] - [email protected] - [email protected] - [email protected] - [email protected] Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
unexpectedly, in the rxjs `partition` operator the index is a local variable per subscription, thus the second subscription starts indexing from 0 once again even though the element is a second one (index should be 1 in that case). Therefore, to overcome this problem the PR introduces a local variable to track the first element. Signed-off-by: Kevin Viglucci <[email protected]>
- [email protected] - [email protected] Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
- [email protected] - [email protected] - [email protected] - [email protected] Signed-off-by: Kevin Viglucci <[email protected]>
* feat: support optional metadata in rxjs adapter requesters Signed-off-by: Kevin Viglucci <[email protected]> * chore(release): release - rsocket-adapter-rxjs@1.0.0-alpha-rxjs-adapter-optional-metadata.0 - rsocket-composite-metadata@1.0.0-alpha-rxjs-adapter-optional-metadata.0 - [email protected] - [email protected] - [email protected] - [email protected] - [email protected] - rsocket-websocket-client@1.0.0-alpha-rxjs-adapter-optional-metadata.0 - rsocket-websocket-server@1.0.0-alpha-rxjs-adapter-optional-metadata.0 Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]> Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
d935d63
to
03439d8
Compare
Rebased to fix resolve DCO check issue. |
Signed-off-by: Kevin Viglucci <[email protected]>
Signed-off-by: Kevin Viglucci <[email protected]>
Adds experimental
ApolloLink
andApolloServer
implementations to support GraphQL over RSocket with Apollo GraphQL.Motivation:
Spring recently added support for GraphQL over RSocket, and we were interested to see if we could provide similar support via rsocket-js. This addition will provide a mechanism for consuming RSocket transport using GraphQL servers via JS clients (browser etc.).
Additionally, these additions provide an interesting alternative to existing Apollo GraphQL subscription links, such as graphql-ws. Existing GraphQL subscription users could now benefit from a potentially increased number of available transport protocol options. I believe it would be beneficial for these advancements to be more broadly broadcasted and advocated for in the GraphQL community.
Modifications:
Result:
See above.
Related:
Open questions/items: