Generate a hash from an express Request or http.IncomingMessage
MIT License
Generate a hash from an express Request or http.IncomingMessage
$ npm install --save request-hash
Here's a simple example using an express app:
const requestHash = require('request-hash');
const express = require('express')
const app = express()
const port = 3000
// Initialize hash method using custom options
const hash = requestHash({ serializer: JSON.stringify, algorithm: 'md5' });
app.get('/', (req, res) => res.send(hash(req)))
app.listen(port, () => console.log(`Example app listening on port ${port}!`))
The API exposes an initialization function which receives the options in order to customize the hash, this main funciton returns another function that actually performs the hashing.
const requestHash = require('request-hash');
requestHash({
algorithm: 'sha256',
encoding: 'hex',
expand: false,
cookies: undefined, // undefined means all cookies are going to be used as-is
headers: undefined, // undefined means all headers are going to be used as-is
serializer: undefined // undefined means custom serialize function is going to be used
});
<string>
Defines which hash algorithm to use, possible values depends on the supported OpenSSL version in the platform. Examples are sha256
, sha512
, md5
, etc.<string>
Defines a custom encoding to be used, possible values are: hex
, latin1
, base64
.<function>
An object serialization function to be used, if undefined uses a custom implementation<boolean>
Allows you to bypass the hash algorithm, just returns the concatenated elements<array>
List of cookie keys to be used to create the unique hash, defaults to using all elements<array>
List of header keys to be used to create the unique hash, defaults to using all elementsconst requestHash = require('request-hash');
const hash = requestHash();
hash(req);
MIT © Ruy Adorno