fix: respect res header immutability (#10554)

Properly respect and merge res headers.
This commit is contained in:
Elliot DeNolf
2025-01-13 15:41:46 -05:00
committed by GitHub
parent 9278eec2b6
commit 5cfb1daaae

View File

@@ -8,6 +8,7 @@ import type { PayloadRequest } from '../types/index.js'
import { createPayloadRequest } from './createPayloadRequest.js'
import { headersWithCors } from './headersWithCors.js'
import { mergeHeaders } from './mergeHeaders.js'
import { routeError } from './routeError.js'
const notFoundResponse = (req: PayloadRequest) => {
@@ -215,14 +216,11 @@ export const handleEndpoints = async ({
}
const response = await handler(req)
if (req.responseHeaders) {
for (const [key, value] of req.responseHeaders) {
response.headers.append(key, value)
}
}
return response
return new Response(response.body, {
headers: mergeHeaders(req.responseHeaders ?? new Headers(), response.headers),
status: response.status,
statusText: response.statusText,
})
} catch (err) {
return routeError({
collection,