The HTTP CONNECT
method method starts two-way communications with the requested resource. It can be used to open a tunnel.
For example, the CONNECT
method can be used to access websites that use SSL (HTTPS). The client asks an HTTP Proxy server to tunnel the TCP connection to the desired destination. The server then proceeds to make the connection on behalf of the client. Once the connection has been established by the server, the Proxy server continues to proxy the TCP stream to and from the client.
CONNECT
is a hop-by-hop method.
Request has body | Yes |
---|---|
Successful response has body | Yes |
Safe | No |
Idempotent | No |
Cacheable | No |
Allowed in HTML forms | No |
Syntax
CONNECT www.example.com:443 HTTP/1.1
Example
Some proxy servers might need authority to create a tunnel. See also the Proxy-Authorization
header.
CONNECT server.example.com:80 HTTP/1.1 Host: server.example.com:80 Proxy-Authorization: basic aGVsbG86d29ybGQ=
Specifications
Specification | Title |
---|---|
RFC 7231, section 4.3.6: CONNECT | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |