Path: blob/main/files/en-us/web/http/headers/content-security-policy/connect-src/index.md
6540 views
------{{HTTPSidebar}}
The HTTP {{HTTPHeader("Content-Security-Policy")}} (CSP) connect-src directive restricts the URLs which can be loaded using script interfaces. The APIs that are restricted are:
{{HTMLElement("a")}} {{htmlattrxref("ping", "a")}},
{{domxref("fetch()")}},
{{domxref("XMLHttpRequest")}},
{{domxref("WebSocket")}},
{{domxref("EventSource")}}, and
{{domxref("Navigator.sendBeacon()")}}.
Note:
connect-src 'self'does not resolve to websocket schemes in all browsers, more info in this issue.
| CSP version | 1 |
|---|---|
| Directive type | {{Glossary("Fetch directive")}} |
| {{CSP("default-src")}} fallback |
Yes. If this directive is absent, the user agent will look for the
default-src directive.
|
Syntax
One or more sources can be allowed for the connect-src policy:
Sources
<source> can be any one of the values listed in CSP Source Values.
Note that this same set of values can be used in all {{Glossary("fetch directive", "fetch directives")}} (and a number of other directives).
Examples
Violation cases
Given this CSP header:
The following connections are blocked and won't load:
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
Compatibility notes
Prior to Firefox 23,
xhr-srcwas used in place of theconnect-srcdirective and only restricted the use of {{domxref("XMLHttpRequest")}}.
See also
{{HTTPHeader("Content-Security-Policy")}}
{{HTMLElement("a")}} {{htmlattrxref("ping", "a")}}
{{domxref("fetch()")}}
{{domxref("XMLHttpRequest")}}
{{domxref("WebSocket")}}
{{domxref("EventSource")}}