If you’ve been wondering what this Apollo data stack thing is all about but haven’t really looked into it, check out my talk about Apollo from last week’s Meteor Night. You can watch the video or read the whole talk in convenient blog post format!
Yeah, I think it would be up to the client and server to collaborate to support that. We’re building support for custom authentication middleware for the client, and should have that for the server as well. If you’re using both, it should be just as seamless as OAuth in Meteor today.
You are referring to using OAuth to log into a backend REST service, right? I think it would be pretty similar to logging into something like Facebook, and using that API as a backend service, which is something that clearly needs to work.
Actually, I’m talking about the other side of the OAuth piece… the OAuth server. Meteor has had great support for OAuth client for years now; but it’s only in recent months that the pattern for the server seems to have gotten out into the open and documented. (Thanks in part to simple:json-routes, RocketChat, Prime8, and others, I might add.)
I ask because we just got an OAuth server up-and-running with a complete GUI, which means people will be able to ‘Log in with…’ and provide an API server to external clients. And the FHIR resources are weirdly similar to the GraphQL query objects. So, I’m just trying to figure out how these things might work with Apollo.
I’ve always wanted to make it super easy to set up an OAuth server. One way I think Apollo could help with this is if it included an accounts implementation (possibly a port of Meteor’s to work with multiple databases).
So in some sense the problem is pretty similar to writing an OAuth server with Meteor accounts today. Do you have some open source code that demonstrates how to set this up? It would be interesting to take a look.
We forked off of prime-8-consulting, which has the essentials.
I’m going to do a license review in the next couple of weeks to sort out where things stand with the production-ready version. It’s mostly just the above, but with Blaze templates at each step of the way.