本文主要介紹HTTP1.1中的connect方法。
在HTTP中常用的方法有g(shù)et壕翩,post,head傅寡。但也有很多不常用的method放妈,其中就包括connect。
1荐操、HTTP代理使用的就是connect這個(gè)方法芜抒,connect在網(wǎng)頁(yè)開發(fā)中不會(huì)使用到。
2淀零、connect的作用就是將服務(wù)器作為代理挽绩,讓服務(wù)器代替用戶去訪問其他網(wǎng)頁(yè)(說白了,就是翻墻)驾中,之后將數(shù)據(jù)返回給用戶唉堪。
3、connect是通過TCP連接代理服務(wù)器的肩民。加入我想告訴代理服務(wù)器向訪問http://www.reibang.com/u/f67233ce6c0c
網(wǎng)站唠亚,就需要首先建立起一條從我的客戶端到代理服務(wù)器的TCP連接,然后給代理服務(wù)器發(fā)送一個(gè)HTTP報(bào)文:
CONNECT http://www.reibang.com/u/f67233ce6c0c:80 HTTP/1.1
Host: www.web-tinker.com:80
Proxy-Connection: Keep-Alive
Proxy-Authorization: Basic *
Content-Length: 0
其中Proxy-Authorization
中持痰,為驗(yàn)證用戶名和密碼部分灶搜。
在發(fā)送完這個(gè)請(qǐng)求之后,代理服務(wù)器會(huì)響應(yīng)請(qǐng)求工窍,返回一個(gè)200的信息割卖,但這個(gè)200并不同于我們平時(shí)見到的OK,而是Connection Established患雏。
HTTP/1.1 200 Connection Established
如果用戶名密碼部分驗(yàn)證失敗鹏溯,則會(huì)返回:
HTTP/1.1 407 Unauthorized
通過驗(yàn)證之后,就可以做HTTP操作了淹仑,發(fā)送的HTTP請(qǐng)求報(bào)文會(huì)通過代理服務(wù)器請(qǐng)求Internet服務(wù)器丙挽。然后返回給客戶端肺孵。
【參考】
[1] HTTP代理協(xié)議 HTTP/1.1的CONNECT方法