1.0.9 • Published 1 year ago

request-response-handler v1.0.9

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

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 e.g import and commonjs e.g require 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

As enums

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

or as constants

import { CREATED, BAD_REQUEST } from '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

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

3 years ago

1.0.0

3 years ago