Kebab case the request and response headers

This commit is contained in:
Owen
2026-10-20 11:47:51 -04:00
parent de62f9c6c9
commit c799d3ab6b
3 changed files with 23 additions and 10 deletions
@@ -444,14 +444,18 @@ export async function buildPublicResourceBlueprintConfig(
}
if (resource.requestHeaders) {
try {
resourceConfig.requestHeaders = JSON.parse(resource.requestHeaders);
resourceConfig["request-headers"] = JSON.parse(
resource.requestHeaders
);
} catch {
// ignore malformed stored headers
}
}
if (resource.responseHeaders) {
try {
resourceConfig.responseHeaders = JSON.parse(resource.responseHeaders);
resourceConfig["response-headers"] = JSON.parse(
resource.responseHeaders
);
} catch {
// ignore malformed stored headers
}
+12 -5
View File
@@ -267,18 +267,25 @@ export async function updatePublicResources(
resourceData.ssl == undefined || resourceData.ssl == null
? true
: resourceData.ssl;
// `headers` is a deprecated alias for `requestHeaders`
// `headers` and `requestHeaders` are deprecated aliases for
// `request-headers`; `responseHeaders` for `response-headers`
const mergedRequestHeaders = [
...(resourceData.headers ?? []),
...(resourceData.requestHeaders ?? [])
...(resourceData.requestHeaders ?? []),
...(resourceData["request-headers"] ?? [])
];
const requestHeaders =
mergedRequestHeaders.length > 0
? JSON.stringify(mergedRequestHeaders)
: null;
const responseHeaders = resourceData.responseHeaders?.length
? JSON.stringify(resourceData.responseHeaders)
: null;
const mergedResponseHeaders = [
...(resourceData.responseHeaders ?? []),
...(resourceData["response-headers"] ?? [])
];
const responseHeaders =
mergedResponseHeaders.length > 0
? JSON.stringify(mergedResponseHeaders)
: null;
if (resourceData.policy) {
const isLicensed = await isLicensedOrSubscribed(
+5 -3
View File
@@ -350,9 +350,11 @@ export const PublicResourceSchema = z
"load-balancing-strategy": z
.enum(["wrr", "p2c", "hrw", "leasttime"])
.optional(),
headers: z.array(HeaderSchema).optional(), // deprecated alias for requestHeaders
requestHeaders: z.array(HeaderSchema).optional(),
responseHeaders: z.array(HeaderSchema).optional(),
"request-headers": z.array(HeaderSchema).optional(),
"response-headers": z.array(HeaderSchema).optional(),
headers: z.array(HeaderSchema).optional(), // deprecated alias for request-headers
requestHeaders: z.array(HeaderSchema).optional(), // deprecated alias for request-headers
responseHeaders: z.array(HeaderSchema).optional(), // deprecated alias for response-headers
rules: z.array(RuleSchema).optional(),
maintenance: MaintenanceSchema.optional(),
mtls: MtlsSchema.optional(), // deprecated alias for auth.mtls