0
0
mirror of https://github.com/honojs/hono.git synced 2024-11-29 17:46:30 +01:00
hono/deno_dist/http-exception.ts

25 lines
541 B
TypeScript
Raw Normal View History

import type { StatusCode } from './utils/http-status.ts'
type HTTPExceptionOptions = {
res?: Response
message?: string
}
export class HTTPException extends Error {
readonly res?: Response
readonly status: StatusCode
constructor(status: StatusCode = 500, options?: HTTPExceptionOptions) {
super(options?.message)
this.res = options?.res
this.status = status
}
getResponse(): Response {
if (this.res) {
return this.res
}
return new Response(this.message, {
status: this.status,
})
}
}