Skip to content

PascalUlor/request-response-handler

 
 

Repository files navigation

request-response-handler

ABOUT This is a very basic HTTP response handler for NodeJS applications.

Table Of Content

  1. Getting Started *_Installation
  2. Usage
  3. Built With
  4. Useful Links
  5. Improvements

Getting Started

These instructions will get you started on using the package

Installation

npm install --save request-response-handler

Usage

This package supports both ES6 and commonjs syntax

Basic http status codes

You can import some http statusCodes often used in projects:

Example

  CREATED, //201
  OK, // 200
  BAD_REQUEST, // 400
  CONFLICT, // 409
  NOT_FOUND, // 404
  UNAUTHORIZED, // 401
  FORBIDDEN, // 403
  SERVER_ERROR, // 500
const {
  SuccessStatusCodes,
  ErrorStatusCodes
} = require('request-response-handler');

errorHandler

Pass the errorHandler as a middleware to catch all errors in your app Example

const { errorHandler } = require('request-response-handler');

app.use(errorHandler());

customError

Use customError to catch errors and return custom error messages in your app

Example

const { customError, ErrorStatusCodes } = require('request-response-handler');
/**
  * Create new error
  *
  * @param {String} message
  * @param {number} status
  *
  * @returns {object} error
  */

    createError({
        status: ErrorStatusCodes.CONFLICT,
        message: 'User with email or username already exists',
    }),

success

Example handle 2XX responses with custom messages and response objects

const { success SuccessStatusCodes} = require('request-response-handler');

/**
  *Create success response data format
  *
  * @param {object} res
  * @param {object} statusCode
  * @param {string} [message='successful']
  * @param {object} body // optional
  * @return {object}
  */
    success(res, SuccessStatusCodes.CREATED, 'SignUp Successful', {
          id: user.id, username, email, token, apiKey: user.apiKey,
        });

Authors

About

response handler for http requests

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published