Expressjs Response
Express middleware to generate JSON response
Installation
npm install expressjs-response --save
Quick Start
Use as Express middleware
import express from 'express'
import responseEnhancer from 'expressjs-response'
const app = express()
app.use(responseEnhancer({
withStatusCode: true,
withStatusMessage: true,
}))
app.get('/success', (req, res) => res.ok({ name: 'John Doe' }))
app.get('/badrequest', (req, res) => res.badRequest('Invalid parameter.'))
app.get('/badgateway', (req, res) => res.badGateway())
app.listen(3000, () => console.log('Start at http://localhost:3000'))
Example Response
200
res.ok({ name: 'John Doe' })
HTTP/1.1 200 Ok
{
"status": "success",
"data": {
"name": "John Doe"
}
}
400
res.badRequest()
HTTP/1.1 400 Bad Request
{
"status": "fail",
"error": {
"code": "400",
"message": "Bad Request"
}
}
400 With Parameter
res.badRequest('Invalid parameter.')
HTTP/1.1 400 Bad Request
{
"status": "fail",
"error": {
"code": "400",
"message": "Bad Request",
"detail": "Invalid parameter."
}
}
502
res.badGateway()
HTTP/1.1 502 Bad Gateway
{
"status": "error",
"error": {
"code": "502",
"message": "Bad Gateway"
}
}
API
METHOD | CODE | PARAMS |
---|
res.ok() | 200 | res.ok(data) |
res.created() | 201 | res.created(data) |
res.noContent() | 204 | - |
res.badRequest() | 400 | res.badRequest(error) |
res.unauthorized() | 401 | res.unauthorized(error) |
res.forbidden() | 403 | res.forbidden(error) |
res.notFound() | 404 | res.notFound(error) |
res.methodNotAllowed() | 405 | res.methodNotAllowed(error) |
res.unprocessableEntity() | 422 | res.unprocessableEntity(error) |
res.internalServerError() | 500 | res.internalServerError(error) |
res.badGateway() | 502 | res.badGateway(error) |
res.serviceUnavailable() | 503 | res.serviceUnavailable(error) |
res.gatewayTimeout() | 504 | res.gatewayTimeout(error) |