graphql-yoga
Version:
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);
}
}
}