]>
Commit | Line | Data |
---|---|---|
4d4e5cd4 | 1 | import * as OAuthServer from 'express-oauth-server' |
9457bf88 | 2 | |
e02643f3 C |
3 | import { OAUTH_LIFETIME } from '../initializers' |
4 | import { logger } from '../helpers' | |
0c1cbbfe C |
5 | |
6 | const oAuthServer = new OAuthServer({ | |
e02643f3 C |
7 | accessTokenLifetime: OAUTH_LIFETIME.ACCESS_TOKEN, |
8 | refreshTokenLifetime: OAUTH_LIFETIME.REFRESH_TOKEN, | |
69b0a27c | 9 | model: require('../lib/oauth-model') |
9457bf88 C |
10 | }) |
11 | ||
0c1cbbfe C |
12 | function authenticate (req, res, next) { |
13 | oAuthServer.authenticate()(req, res, function (err) { | |
14 | if (err) { | |
15 | logger.error('Cannot authenticate.', { error: err }) | |
16 | return res.sendStatus(500) | |
17 | } | |
18 | ||
f9b2d2ce | 19 | if (res.statusCode === 401 || res.statusCode === 400 || res.statusCode === 503) return res.end() |
0c1cbbfe C |
20 | |
21 | return next() | |
22 | }) | |
23 | } | |
24 | ||
25 | function token (req, res, next) { | |
26 | return oAuthServer.token()(req, res, next) | |
27 | } | |
28 | ||
9457bf88 C |
29 | // --------------------------------------------------------------------------- |
30 | ||
65fcc311 C |
31 | export { |
32 | authenticate, | |
33 | token | |
34 | } |