Além dos usuais GET
/ POST
/ HEAD
/ PUT
, muitos servidores proxy HTTP entendem uma solicitação CONNECT
adicional, que estabelece uma conexão TCP bruta para o remoto hospedeiro. Isso é necessário para suportar adequadamente o HTTPS, mas muitas vezes pode ser usado para outros protocolos.
$ nc proxy.example.com 8080
-> CONNECT mail.example.com:587 HTTP/1.0
->
<- HTTP/1.0 200 Connection Established
<- Proxy-agent: Apache/2.2.19 (Debian)
<-
<- 220 mail.example.com ESMTP Badger badger badger badger badger postfix postfix!
-> ehlo grawity-pc
<- 250-mail.example.com
<- 250-PIPELINING
<- 250-SIZE 10240000
<- 250-STARTTLS
<- 250-ENHANCEDSTATUSCODES
<- 250-8BITMIME
<- 250 DSN
-> quit
<- 221 2.0.0 Bye