项目作者: gmoqa

项目描述 :
HTTP Request integrity verifier middleware for Node.js
高级语言: JavaScript
项目地址: git://github.com/gmoqa/paranoik.git
创建时间: 2019-05-03T17:33:44Z
项目社区:https://github.com/gmoqa/paranoik

开源协议:MIT License

下载


paranoik

NPM Version size license

Check integrity of each request using a custom HTTP header checksum (X-Checksum).

The hash is formed by [request url, request method, request data, request user-agent, secret key] in a MD5 hash function.

Installation

  1. npm install paranoik

Backend Usage

  1. const express = require('express');
  2. const paranoik = require('paranoik');
  3. const app = express();
  4. app.use(paranoik('YOUR_SECRET'));

Express Configuration

  1. const options = {
  2. secret: YOUR_SECRET,
  3. whitelist: [
  4. '/login',
  5. '/recovery'
  6. ]
  7. };
  8. app.use(paranoik(options));

Frontend usage

  1. import paranoik from 'paranoik';
  2. axios.interceptors.request.use( async (config) => {
  3. config.headers.XChecksum = await paranoik.checksum('YOUR_SECRET');
  4. return config;
  5. }, function (error) {
  6. return Promise.reject(error);
  7. });

License

MIT