Implement /oauth2/token endpoint; token auth middleware
This commit is contained in:
@@ -109,6 +109,20 @@ export class Response {
|
||||
return this
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove a header from the response by name.
|
||||
* @param name
|
||||
*/
|
||||
public unsetHeader(name: string): this {
|
||||
this.logging.verbose(`Will unset header on response: ${name}`)
|
||||
if ( this.sentHeaders ) {
|
||||
throw new HeadersAlreadySentError(this, name)
|
||||
}
|
||||
|
||||
delete this.headers[name]
|
||||
return this
|
||||
}
|
||||
|
||||
/**
|
||||
* Bulk set the specified headers in the response.
|
||||
* @param data
|
||||
|
||||
@@ -372,21 +372,37 @@ export class Route<TReturn extends ResponseObject, THandlerParams extends unknow
|
||||
return this as HandledRoute<TReturn, THandlerParams>
|
||||
}
|
||||
|
||||
public pre(middleware: Instantiable<Middleware>): this {
|
||||
this.preflight.prepend(request => request.make<Middleware>(middleware, request).apply())
|
||||
public pre(middleware: Instantiable<Middleware>|Constructable<Middleware>): this {
|
||||
let name: string
|
||||
if ( middleware instanceof Pipeline ) {
|
||||
this.preflight.prepend(request => middleware.apply(request).apply())
|
||||
name = '(unknown pipeline)'
|
||||
} else {
|
||||
this.preflight.prepend(request => request.make<Middleware>(middleware, request).apply())
|
||||
name = middleware.name
|
||||
}
|
||||
|
||||
this.displays.push({
|
||||
stage: 'pre',
|
||||
display: `${middleware.name}`,
|
||||
display: name,
|
||||
})
|
||||
|
||||
return this
|
||||
}
|
||||
|
||||
public post(middleware: Instantiable<Middleware>): this {
|
||||
this.postflight.push(request => request.make<Middleware>(middleware, request).apply())
|
||||
public post(middleware: Instantiable<Middleware>|Constructable<Middleware>): this {
|
||||
let name: string
|
||||
if ( middleware instanceof Pipeline ) {
|
||||
this.postflight.push(request => middleware.apply(request).apply())
|
||||
name = '(unknown pipeline)'
|
||||
} else {
|
||||
this.preflight.push(request => request.make<Middleware>(middleware, request).apply())
|
||||
name = middleware.name
|
||||
}
|
||||
|
||||
this.displays.push({
|
||||
stage: 'pre',
|
||||
display: `${middleware.name}`,
|
||||
stage: 'post',
|
||||
display: name,
|
||||
})
|
||||
|
||||
return this
|
||||
|
||||
Reference in New Issue
Block a user