AWS Appsync support?
See original GitHub issueAWS Appsync seems to require an extensions
field on the payload. Does the WebsocketsTransport support this?
https://docs.aws.amazon.com/appsync/latest/devguide/real-time-websocket-client.html
"id": "eEXAMPLE-cf23-1234-5678-152EXAMPLE69",
"payload": {
"data": "{\"query\":\"subscription onCreateMessage {\\n onCreateMessage {\\n __typename\\n message\\n }\\n }\",\"variables\":{}}",
"extensions": {
"authorization": {
"accept": "application/json, text/javascript",
"content-type": "application/json; charset=UTF-8",
"X-Amz-Security-Token": "XXX",
"Authorization": "AWS4-HMAC-SHA256 Credential=XXXXXXXXXXXXXXXXXXXX/20200401/us-east-1/appsync/aws4_request, SignedHeaders=accept;content-encoding;content-type;host;x-amz-date;x-amz-security-token, Signature=b90131a61a7xxx",
"content-encoding": "amz-1.0",
"host": "example1234567890000.appsync-api.us-east-1.amazonaws.com",
"x-amz-date": "20200401T001010Z"
}
}
},
"type": "start"
}
Issue Analytics
- State:
- Created 3 years ago
- Comments:26 (18 by maintainers)
Top Results From Across the Web
Serverless GraphQL and Pub/Sub APIs – AWS AppSync
AWS AppSync creates serverless GraphQL and Pub/Sub APIs that simplify application development through a single endpoint to securely query, update, ...
Read more >AWS AppSync - The Ultimate Guide - Serverless Framework
AppSync allows developers to build GraphQL APIs without much of the usual work; it handles the parsing and resolution of requests as well...
Read more >AWS AppSync: Five Reasons You Should Consider It Over ...
AWS AppSync is a fully managed AWS serverless service for real-time data queries, synchronization, and communications. In AppSync, AWS has a ...
Read more >AWS AppSync 101 - DEV Community
AWS AppSync has been one of the powerful integration service for Front-end and AWS serverless... Tagged with aws, appsync, graphql, ...
Read more >Amazon AppSync - Build data driven apps with real time and ...
Amazon AppSync integrates with Amazon DynamoDB, Amazon Aurora, Amazon Elasticsearch, Amazon Lambda, and other Amazon Web Services services, enabling you to ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
@chadfurman I’m sorry that I haven’t had time to come back to this. Been awhile since I touched the code that I was working on, but you are welcome to it as a starting point. I’d love to help, but swamped with other stuff at the moment. If you’re still working on it when I get back to the thing that forced me into this interesting corner, I’ll be glad to lend a hand.
One thing to note is that AppSync actually goes through ApiGateway for all of it’s access, leading to some pretty strange enveloping of the AppSync access credentials as they are proxied through ApiGateway.
My code (no quality guarantees) is below. As I recall, I tested the API Key and OIDC auths (but it has been a minute and my memory isn’t what it once was. Also, as I recall, there was some stuff in the underlying
WebsocketsTransport
that made sublcassing somewhat more copy/paste than I would normally like. If I was doing the PR for this I probably would have changed that class to reduce the amount of code copy/paste.Leaving this here for reference: https://aws.amazon.com/blogs/mobile/appsync-websockets-python/