add mime information to universal path; include content type in static server

master
Garrett Mills 4 years ago
parent 34863a26a7
commit d383cebe78
Signed by: garrettmills
GPG Key ID: D2BF5FBA8298F246

@ -38,6 +38,7 @@ export default class FileResponseFactory extends ResponseFactory {
if ( content.headers && content.body && length ) {
request.response.body = content.body
request.response.headers.set('Content-Length', length)
request.response.headers.set('Content-Type', path.content_type)
} else {
this.logger.debug(`Tried to serve file that does not exist: ${path}`)
request.response.status = HTTPStatus.NOT_FOUND

@ -1,4 +1,5 @@
import { path as deno_path } from '../external/std.ts'
import * as Mime from 'https://deno.land/x/media_types/mod.ts'
export enum UniversalPathPrefix {
HTTP = 'http://',
@ -87,4 +88,20 @@ export class UniversalPath {
toString() {
return `${this.prefix}${this._local}`
}
get ext() {
return deno_path.extname(this._local)
}
get mime_type() {
return Mime.lookup(this.ext)
}
get content_type() {
return Mime.contentType(this.ext)
}
get charset() {
return Mime.charset(this.mime_type)
}
}

Loading…
Cancel
Save