Skip to content

Commit 0889a2a

Browse files
authored
fix: append server-timing header value if key exist when using setHeaders to avoid exception (#14700)
Closes #14681
1 parent beb454b commit 0889a2a

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

.changeset/clear-spies-wear.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@sveltejs/kit': patch
3+
---
4+
5+
fix: allow multiple `server-timing` headers

packages/kit/src/runtime/server/respond.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,12 @@ export async function internal_respond(request, options, manifest, state) {
183183
'Use `event.cookies.set(name, value, options)` instead of `event.setHeaders` to set cookies'
184184
);
185185
} else if (lower in headers) {
186-
throw new Error(`"${key}" header is already set`);
186+
// appendHeaders-style for Server-Timing https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Server-Timing
187+
if (lower === 'server-timing') {
188+
headers[lower] += ', ' + value;
189+
} else {
190+
throw new Error(`"${key}" header is already set`);
191+
}
187192
} else {
188193
headers[lower] = value;
189194

0 commit comments

Comments
 (0)