asteroid-oauth-mixin
An OAuth mixin for Asteroid. You can use an available provider (check the list of available provider) or you can add a custom provider.
Available provider
Install
npm install asteroid-oauth
Development environment setup
After cloning the repository, install npm
dependencies with npm install
.
Run npm test
to run unit tests, or npm run dev
to have mocha
re-run your tests when source or test files change.
Example usage
;; const Asteroid = ; const asteroid = platform endpoint; /** You need to define a `getServiceConfig` method (either in a mixin or on the* instance itself) which returns a plain object containing the configuration* for the specified provider. Such configurations are stored in the* `meteor_accounts_loginServiceConfiguration` collection, which the oauth* mixin automatically retrieves by subscribing to* `meteor.loginServiceConfiguration`, a subscription published - by default -* by the meteor server.* A naive implementation could be the following:*/asteroidddp;asteroid { return thisloginServiceConfigurationproviderName;} /** Somewhere in your code*/ asteroid
Example usage with asteroid-immutable-collections-mixin:
;;; const Asteroid = ; const asteroid = platform endpoint; /** Somewhere in your code*/ asteroid
API
loginWith(providerName, scope)
This is the method used to login.
Arguments
-
providerName
string required: the provider name with whom you want to login with Oauth. -
scope
string optional: you might need to request access to APIs, depending on the level of access you need. Forgoogle
provider, thedefault
is set toopenid email
.
Returns
A promise to the method return value (the promise is rejected if the method throws).
registerOauthProvider(provider)
This is used to set a custom provider.
Arguments
provider
string required: the provider name with whom you want to add to the list of available provider.
Returns
Nothing.