克服HttpURLConnection 中的代理障礙
在嘗試透過HttpURLConnection 與代理建立連線時,您可能會遇到連線失敗的情況使用代理。這種差異通常源於缺乏提供給 JVM 的代理資訊。
要解決此問題,您可以在程式碼中明確定義代理設定。從 Java 1.5 開始,HttpURLConnection 提供了 openConnection(proxy) 方法,讓您可以傳遞 java.net.Proxy 實例。此代理實例可以如下初始化:
// Proxy IP: 10.0.0.1, Port: 8080 Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("10.0.0.1", 8080));
如果您的代理需要身份驗證,您可能會遇到 HTTP 407 回應。為了解決這個問題,請考慮實現 Authenticator 類別:
Authenticator authenticator = new Authenticator() { public PasswordAuthentication getPasswordAuthentication() { return (new PasswordAuthentication("user", "password".toCharArray())); } }; Authenticator.setDefault(authenticator);
透過採用這些技術,您可以無縫配置 HttpURLConnection 以利用代理設置,解決未使用代理的問題。
以上是如何設定 HttpURLConnection 以使用代理?的詳細內容。更多資訊請關注PHP中文網其他相關文章!