0.2.1-beta.0 • Published 3 years ago
@reignmodule/oauth2-client v0.2.1-beta.0
Client OAuth2
How to install
npm install @reignmodule/oauth2-client
Configure client OAuth2
import { ClientOAuth2 } from '@reignmodule/oauth2-client';
const client = new ClientOAuth2({
authorizationUri: 'https://auth.sample/sigup',
tokenUri: 'https://auth.sample/token',
scope: 'profile users.write',
clientId: '4f71bd80a86e3df3',
clientSecret: '544fd3b90454f71303530379ee38',
redirectUri: 'https://app.sample/complete_auth',
});
Authorization Code Grant
Get Authorization URI
client.getAutorizationUri().uri;
// https://auth.sample/sigup
// ?response_type=code
// &state=7ca3c6082c56908bcfc9497b2d8c9371
// &client_id=4f71bd80a86e3df3
// &scope=profile%20users.write
// &redirect_uri=https%3A%2F%2Fapp.sample%2Fcomplete_auth
HTML Form
<form method="GET" action="https://auth.sample/sigup">
<input type="hidden" name="response_type" value="code"/>
<input type="hidden" name="state" value={client.state}/>
<input type="hidden" name="client_id" value={client.clientId}/>
<input type="hidden" name="scope" value={client.scope}/>
<input type="hidden" name="redirect_uri" value={client.redirectUri}/>
</form>
Authorization Code Exchange
// URL: https://app.sample/complete_auth?state=7ca3c6082c56908bcfc9497b2d8c9371&code=7b2d8c9371
// queryState: 7ca3c6082c56908bcfc9497b2d8c9371
// queryCode: 7b2d8c9371
if (queryState!==client.state) {
throw new Error('state no valid');
}
client.exchangeCode(code)
.then(()=>{
// Autorization done!!
});
0.2.1-beta.0
3 years ago
0.2.0-beta.4
3 years ago
0.2.0-beta.2
3 years ago
0.2.0-beta.1
3 years ago
0.1.1-beta.8
4 years ago
0.1.1-beta.6
4 years ago
0.1.1-beta.5
4 years ago
0.1.1-beta.7
4 years ago
0.1.1-beta.4
4 years ago
0.1.1-beta.3
4 years ago
0.1.1-beta.2
4 years ago
0.1.1-beta.1
4 years ago
0.1.1-beta
4 years ago
0.1.0-beta
4 years ago