Skip to content

Commit

Permalink
feat: improve error util
Browse files Browse the repository at this point in the history
  • Loading branch information
pi0 committed Nov 19, 2020
1 parent 6a18c9e commit 5504f4e
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 8 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ server.listen(port, () => {
## utils
- `send (req, data, type)`
- `error (req, data, code)`
- `error (req, error, code)`
- `redirect (req, location, code)`
- `lazy (handle)`
Expand Down
5 changes: 1 addition & 4 deletions src/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,7 @@ export function createApp (): App {

const handle: Handle = function (req: IncomingMessage, res: ServerResponse) {
return _handle(req, res).catch((err: Error | any) => {
error(res,
debug ? err.stack : 'internal error',
res.statusCode || err.status || err.statusCode || 500
)
error(res, err)
})
}

Expand Down
15 changes: 12 additions & 3 deletions src/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,18 @@ export function defaultContentType (res: ServerResponse, type: string) {
}
}

export function error (res: ServerResponse, data: string, code: number = 500) {
code = res.statusCode = (res.statusCode === 200) ? code : res.statusCode
res.end(code + ': ' + data)
export function error (res: ServerResponse, error: Error, code?: number) {
// @ts-ignore
res._error = error

res.statusCode = code || (res.statusCode !== 200)
? res.statusCode
// @ts-ignore
: (error.status || error.statusCode || 500)

const message = error.toString()

res.end(code + ' - ' + message)
}

export function redirect (res: ServerResponse, location: string, code = 302) {
Expand Down

0 comments on commit 5504f4e

Please sign in to comment.