25 lines
699 B
TypeScript
25 lines
699 B
TypeScript
|
import Module from '../Module.ts'
|
||
|
import Kernel from '../Kernel.ts'
|
||
|
import {Request} from '../../Request.ts'
|
||
|
import {Injectable} from '../../../../../di/src/decorator/Injection.ts'
|
||
|
import Config from '../../../unit/Config.ts'
|
||
|
|
||
|
@Injectable()
|
||
|
export default class SetDatonHeaders extends Module {
|
||
|
public static register(kernel: Kernel) {
|
||
|
kernel.register(this).after()
|
||
|
}
|
||
|
|
||
|
constructor(
|
||
|
protected readonly config: Config,
|
||
|
) {
|
||
|
super()
|
||
|
}
|
||
|
|
||
|
public async apply(request: Request): Promise<Request> {
|
||
|
const text = this.config.get('server.powered_by.text', 'Daton')
|
||
|
request.response.headers.set('X-Powered-By', text)
|
||
|
return request
|
||
|
}
|
||
|
}
|