首頁 >Java >java教程 >如何設定 HttpURLConnection 以使用代理?

如何設定 HttpURLConnection 以使用代理?

Susan Sarandon
Susan Sarandon原創
2024-11-07 18:59:031037瀏覽

How Can I Configure HttpURLConnection to Use a Proxy?

克服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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn