Simplify /oauth2/issue logic
This commit is contained in:
parent
d210cba236
commit
8a9264b9de
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@extollo/lib",
|
"name": "@extollo/lib",
|
||||||
"version": "0.9.37",
|
"version": "0.9.38",
|
||||||
"description": "The framework library that lifts up your code.",
|
"description": "The framework library that lifts up your code.",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"types": "lib/index.d.ts",
|
"types": "lib/index.d.ts",
|
||||||
|
@ -13,7 +13,7 @@ import {
|
|||||||
TokenRepository,
|
TokenRepository,
|
||||||
} from './types'
|
} from './types'
|
||||||
import {HTTPError} from '../../http/HTTPError'
|
import {HTTPError} from '../../http/HTTPError'
|
||||||
import {Awaitable, HTTPStatus, Maybe, right} from '../../util'
|
import {HTTPStatus, Maybe} from '../../util'
|
||||||
import {view} from '../../http/response/ViewResponseFactory'
|
import {view} from '../../http/response/ViewResponseFactory'
|
||||||
import {SecurityContext} from '../context/SecurityContext'
|
import {SecurityContext} from '../context/SecurityContext'
|
||||||
import {redirect} from '../../http/response/RedirectResponseFactory'
|
import {redirect} from '../../http/response/RedirectResponseFactory'
|
||||||
@ -50,14 +50,13 @@ export class OAuth2Server extends Controller {
|
|||||||
|
|
||||||
Route.post('/oauth2/token')
|
Route.post('/oauth2/token')
|
||||||
.alias('@oauth2:token')
|
.alias('@oauth2:token')
|
||||||
.parameterMiddleware<OAuth2Client>(async req =>
|
|
||||||
right(await req.make<OAuth2Server>(OAuth2Server).getClientFromRequest(req)))
|
|
||||||
.passingRequest()
|
.passingRequest()
|
||||||
.calls<OAuth2Server>(OAuth2Server, x => x.issue)
|
.calls<OAuth2Server>(OAuth2Server, x => x.issue)
|
||||||
}
|
}
|
||||||
|
|
||||||
issue(request: Request, client: OAuth2Client): Awaitable<ResponseObject> {
|
async issue(request: Request): Promise<ResponseObject> {
|
||||||
const grant = request.safe('grant_type').in(grantTypes)
|
const grant = request.safe('grant_type').in(grantTypes)
|
||||||
|
const client = await this.getClientFromRequest(request)
|
||||||
|
|
||||||
if ( grant === GrantType.Client ) {
|
if ( grant === GrantType.Client ) {
|
||||||
return this.issueFromClient(request, client)
|
return this.issueFromClient(request, client)
|
||||||
|
Loading…
Reference in New Issue
Block a user