Skip to content

Commit 9144a86

Browse files
jessezhang91AbhiPrasad
authored andcommitted
fix(node): support undici headers as strings or arrays (#10938)
1 parent 369fc52 commit 9144a86

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

packages/node/src/integrations/undici/index.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -309,8 +309,13 @@ function setHeadersOnRequest(
309309
sentryTrace: string,
310310
sentryBaggageHeader: string | undefined,
311311
): void {
312-
const headerLines = request.headers.split('\r\n');
313-
const hasSentryHeaders = headerLines.some(headerLine => headerLine.startsWith('sentry-trace:'));
312+
let hasSentryHeaders: boolean;
313+
if (Array.isArray(request.headers)) {
314+
hasSentryHeaders = request.headers.some(headerLine => headerLine === 'sentry-trace');
315+
} else {
316+
const headerLines = request.headers.split('\r\n');
317+
hasSentryHeaders = headerLines.some(headerLine => headerLine.startsWith('sentry-trace:'));
318+
}
314319

315320
if (hasSentryHeaders) {
316321
return;

packages/node/src/integrations/undici/types.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,9 @@ export interface UndiciRequest {
224224
// Originally was Dispatcher.HttpMethod, but did not want to vendor that in.
225225
method?: string;
226226
path: string;
227-
headers: string;
227+
// string for undici@<=6.6.2 and string[] for undici@>=6.7.0.
228+
// see for more information: https://github.com/getsentry/sentry-javascript/issues/10936
229+
headers: string | string[];
228230
addHeader(key: string, value: string): RequestWithSentry;
229231
}
230232

0 commit comments

Comments
 (0)