首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Charles 抓包 Eclipse 發起的 HTTP 請求:代理配置全攻略

     編輯:Java 綜合教學

場景

開發調試時,需監控 Eclipse 運行的 Java 程式發起的 GET/POST 請求。Charles 作為 HTTP 代理/監聽工具,配合 JVM 代理參數即可實現無侵入抓包。

方案一:代碼內硬編碼代理(臨時調試)

在主方法或請求發起前添加:

System.setProperty("http.proxySet", "true");
System.setProperty("http.proxyHost", "127.0.0.1");
System.setProperty("http.proxyPort", "8885");

端口需與 Charles 設置一致。

方案二:Eclipse 全局 JRE 代理設置(推薦,持久生效)

  1. 打開 Window > Preferences > Java > Installed JREs
  2. 選中當前使用的 JRE,點擊 Edit
  3. 在 Default VM arguments 填入:
    -Dhttp.proxySet="true" -Dhttp.proxyHost="127.0.0.1" -Dhttp.proxyPort="8888"
  4. 確認保存,後續該 JRE 運行的所有程式自動走代理。

Charles 端配置

  1. 菜單 Proxy > Proxy Settings
  2. Proxies 標籤頁,勾選 HTTP Proxy,端口設置為 8888(或與上文一致)
  3. 可選:SSL Proxying 勾選 Enable SSL Proxying 並添加目標域名/端口,以解密 HTTPS 請求

Charles 代理設置截圖

驗證

在 Eclipse 運行發起 HTTP 請求的程式,Charles 即可顯示完整請求/響應報文,包含 Header、Body、Cookies 等細節,極大提升調試效率。

注意事項

  • 若請求為 HTTPS,需在 Charles 安裝根證書並配置 SSL Proxying,否則僅顯示 CONNECT 隧道;
  • 代理端口衝突時可自行修改,雙端保持一致即可;
  • 生產環境或非調試時建議關閉代理,避免影響性能。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved