Path: blob/main/files/en-us/web/http/headers/access-control-expose-headers/index.md
6532 views
------{{HTTPSidebar}}
The Access-Control-Expose-Headers response header allows a server to indicate which response headers should be made available to scripts running in the browser, in response to a cross-origin request.
Only the {{Glossary("CORS-safelisted response header", "CORS-safelisted response headers")}} are exposed by default. For clients to be able to access other headers, the server must list them using the Access-Control-Expose-Headers header.
| Header type | {{Glossary("Response header")}} |
|---|---|
| {{Glossary("Forbidden header name")}} | no |
Syntax
Directives
<header-name>
: A list of zero or more comma-separated header names that clients are allowed to access from a response. These are in addition to the {{Glossary("CORS-safelisted response header", "CORS-safelisted response headers")}}.
*(wildcard): The value "
*" only counts as a special wildcard value for requests without credentials (requests without HTTP cookies or HTTP authentication information). In requests with credentials, it is treated as the literal header name "*" without special semantics.
Examples
The {{Glossary("CORS-safelisted response header", "CORS-safelisted response headers")}} are: {{HTTPHeader("Cache-Control")}}, {{HTTPHeader("Content-Language")}}, {{HTTPHeader("Content-Length")}}, {{HTTPHeader("Content-Type")}}, {{HTTPHeader("Expires")}}, {{HTTPHeader("Last-Modified")}}, {{HTTPHeader("Pragma")}}. To expose a non-CORS-safelisted response header, you can specify:
To additionally expose a custom header, like Kuma-Revision, you can specify multiple headers separated by a comma:
For requests without credentials, a server can also respond with a wildcard value:
However, this won't wildcard the {{HTTPHeader("Authorization")}} header, so if you need to expose that, you will need to list it explicitly:
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
{{HTTPHeader("Access-Control-Allow-Headers")}}
{{HTTPHeader("Access-Control-Allow-Origin")}}