鍍金池/ 問答/網(wǎng)絡安全  HTML/ webpack-dev-server轉發(fā)的請求為什么無法被charles抓包?

webpack-dev-server轉發(fā)的請求為什么無法被charles抓包?

如題,我原來認為proxy應該只是類似于browser <=> webpack-dev-server <=> server這樣的形式,webpack-dev-server在中間做一個轉發(fā),但是現(xiàn)在看來似乎并不是這樣,因為charles只能抓到browser <=> webpack-dev-server這一段請求,而webpack-dev-server <=> server這一段抓不到,請問這是為什么?

回答
編輯回答
雨萌萌

沒用過charles,不過此類抓包工具應該大都和fiddler一樣。

一般來說,抓包工具本身也是個代理服務器,啟動抓包工具時,同時會監(jiān)聽一個端口(fiddler監(jiān)聽8888端口),而你啟動瀏覽器時,瀏覽器進程與抓包工具建立tcp連接,而這個tcp連接的接收端就是 抓包工具占用的端口。

也就是說,抓包工具只能抓到 browser <=> server 之間的請求,而 webpack-dev-server 也是一個服務器,你用到他的代理轉發(fā)功能,又想能被抓包工具抓到的話,

你需要在webpack-dev-server手動將請求轉發(fā)到抓包工具,再由抓包工具轉發(fā)到你想要的服務器。

不然,webpack-dev-server 和抓包工具不存在tcp連接,也就不能被抓包

2018年9月21日 04:31