作者sbrhsieh (sbr)
看板java
標題Re: [問題] 如何切換 proxy 來建立 URLConnection?
時間Fri May 8 00:37:51 2009
※ 引述《JCool (街酷)》之銘言:
: 我現在在寫一個程式,需不斷送出 URL request 到遠端 server,
: 但因為不能一直使用相同 IP,所以透過多個不同 proxy 來完成。
: (可以想成灌票程式的運作方式,但我單純是要抓網頁資料,並非惡意軟體!)
: 我是利用 System.getProperties().put 來設定 proxy 的 IP、port 等資訊,
: 現在碰到的問題是:無法切換 proxy!
: 也就是當我先連至 A 再連到 server,第二次想透過 B 連到 server,
: 但我去檢查我本機端送出的封包,都是送到 A 這個 proxy!
: 我有嘗試過 System.getProperties().clear() 或是 System.getProperties().remove()
: 想將 proxySet、proxyHost、proxyPort 的資訊清除,但程式依然只能連到 proxy A。
: 另外我測試過,若丟兩個位於不同 server 的 URL 到 parserA 和 parserB,
: 那麼可以成功地分別使用兩個 proxy 來送出 URL request!
: 但若是位於相同網域之下的 URL,一律只能使用第一個 proxy!
: 試圖在網路上找尋相關解答都沒有收穫,才到板上請求協助,
: 板友們若有任何解答或是可能的方法還請不吝指教,
: 給我關鍵字我再去做進一步的研究也沒問題,先說聲謝謝!
如果你使用的 JRE 是 1.5 以後的版本,在建立 URLConnection 時指定 proxy:
http://java.sun.com/javase/6/docs/api/java/net/URL.html#openConnection(java.net.Proxy)
如果是 JRE 1.5-,試著設定成讓 URLConnection 不使用 cache。
http://java.sun.com/javase/6/docs/api/java/net/URLConnection.html#setDefaultUseCaches(boolean)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.173.130.231
推 JCool:哇,太感謝了!我來研究一下! 05/08 00:43
推 nicepizza:那個Proxy Type要放什麼?? 05/08 11:22
推 nicepizza:喔…我知道了 Proxy.Type.HTTP ... 05/08 13:15