Socket
Socket
Sign inDemoInstall

express-mw-correlation-id

Package Overview
Dependencies
1
Maintainers
3
Versions
8
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    express-mw-correlation-id

express middleware that correlates HTTP requests between a client and server


Version published
Weekly downloads
391
decreased by-13.69%
Maintainers
3
Install size
10.5 kB
Created
Weekly downloads
 

Readme

Source

express-mw-correlation-id

Correlates HTTP requests between a client and server

Build StatusCode Coverage 100%ISC LicenseNodeJS

JavaScript Style Guide

api

const setCorrelationId = require('express-mw-correlation-id')

**setCorrelationId([string, defaults to X-Request-ID], [formatter=identity])

  • by default will use the X-Request-ID header but to use a custom header instead just pass the name in the first parameter
  • formatter is a function that will add custom formats to the generated ID, being, by default, the generated ID.
  • the middleware will reuse the request id if already present in the request headers

req.id now is expose to be used internally by the api/service is using the express-mw-correlation-id middleware

examples

const express = require('express')
const setCorrelationId = require('express-mw-correlation-id')

const app = express()

app.use(setCorrelationId())

// `req.id` hold the correlation/request id
app.get('/', (req, res) => { res.send(req.id) })

app.listen(3000)
Custom ID
app.use(setCorrelationId('X-Custom-ID'))
Custom ID and custom format
app.use(setCorrelationId('X-Custom-ID', (id) => id))
Custom format
app.use(setCorrelationId((id) => id))

client

curl -v http://localhost:3000
* Rebuilt URL to: http://localhost:3000/
*   Trying ::1...
* Connected to localhost (::1) port 3000 (#0)
> GET / HTTP/1.1
> Host: localhost:3000
> User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
> Accept: */*
> Referer:
>
< HTTP/1.1 200 OK
< X-Powered-By: Express
< X-Request-ID: 825efe65-a27d-4dca-936b-e74249095fb7
< Content-Type: text/html; charset=utf-8
< Content-Length: 11
< ETag: W/"b-sQqNsWTgdUEFt6mb5y4/5Q"
< Date: Thu, 08 Dec 2016 10:22:44 GMT
< Connection: keep-alive
<
* Connection #0 to host localhost left intact
825efe65-a27d-4dca-936b-e74249095fb7

X-Request-ID should come with the headers

ISC License (ISC)

Keywords

FAQs

Last updated on 04 Mar 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc