node-requestid
Reads a request ID header from the HTTP request and writes it into the HTTP response. By default, the header is called X-Request-ID
but this value
can be overwritten.
If there is no value for the header on the request, a Version 4 UUID is generated and used as the value and added to the response.
Usage
const requestId = const restify = // should be compatible with express, not tested const restify = ;const server = restify; // make the requestId the first middleware to ensure a requestId down the stackserver// other middlewares wired up here ... server
cURL Example:
$ curl -v http://127.0.0.1:3000* Rebuilt URL to: http://127.0.0.1:3000/* Trying 127.0.0.1...* Connected to 127.0.0.1 port 3000 > GET / HTTP/1.1> Host: 127.0.0.1:3000> User-Agent: curl/7.43.0> Accept: */*>< HTTP/1.1 200 OK< Connection: close< X-Request-ID: 3fd20475-68b8-46d1-a80e-02ef2ee75801< Content-Type: application/json< Content-Length: 2< Date: Fri, 09 Sep 2016 03:54:02 GMT<* Closing connection 0{}
curl -v http://127.0.0.1:3000 --header "X-Request-ID: 123"* Rebuilt URL to: http://127.0.0.1:3000/* Trying 127.0.0.1...* Connected to 127.0.0.1 port 3000 > GET / HTTP/1.1> Host: 127.0.0.1:3000> User-Agent: curl/7.43.0> Accept: */*> X-Request-ID: 123>< HTTP/1.1 200 OK< Connection: close< X-Request-ID: 123< Content-Type: application/json< Content-Length: 2< Date: Fri, 09 Sep 2016 03:56:27 GMT<* Closing connection 0{}