@azure/core-rest-pipeline
Version:
Isomorphic client library for making HTTP requests in node.js and browser.
28 lines • 1.1 kB
JavaScript
;
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
Object.defineProperty(exports, "__esModule", { value: true });
exports.setClientRequestIdPolicyName = void 0;
exports.setClientRequestIdPolicy = setClientRequestIdPolicy;
/**
* The programmatic identifier of the setClientRequestIdPolicy.
*/
exports.setClientRequestIdPolicyName = "setClientRequestIdPolicy";
/**
* Each PipelineRequest gets a unique id upon creation.
* This policy passes that unique id along via an HTTP header to enable better
* telemetry and tracing.
* @param requestIdHeaderName - The name of the header to pass the request ID to.
*/
function setClientRequestIdPolicy(requestIdHeaderName = "x-ms-client-request-id") {
return {
name: exports.setClientRequestIdPolicyName,
async sendRequest(request, next) {
if (!request.headers.has(requestIdHeaderName)) {
request.headers.set(requestIdHeaderName, request.requestId);
}
return next(request);
},
};
}
//# sourceMappingURL=setClientRequestIdPolicy.js.map