graphql-yoga
Version:
<div align="center"><img src="https://raw.githubusercontent.com/graphql-hive/graphql-yoga/refs/heads/main/website/public/cover.png" width="720" /></div>
22 lines (21 loc) • 611 B
JavaScript
export function useAllowedResponseHeaders(allowedHeaders) {
return {
onResponse({ response }) {
removeDisallowedHeaders(response.headers, allowedHeaders);
},
};
}
export function useAllowedRequestHeaders(allowedHeaders) {
return {
onRequest({ request }) {
removeDisallowedHeaders(request.headers, allowedHeaders);
},
};
}
function removeDisallowedHeaders(headers, allowedHeaders) {
for (const headerName of headers.keys()) {
if (!allowedHeaders.includes(headerName)) {
headers.delete(headerName);
}
}
}