request-response-handler
TypeScript icon, indicating that this package has built-in type declarations

1.0.9 • Public • Published

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

Readme

Keywords

none

Package Sidebar

Install

npm i request-response-handler

Weekly Downloads

1

Version

1.0.9

License

MIT

Unpacked Size

44.7 kB

Total Files

37

Last publish

Collaborators

  • pccodes