SSブログ

proxyを設定してHTTP通信 [プログラミング]

Javaでは、HTTP通信をするプログラムを簡単に作ることが出来ます。

final String urlStr = "http://~~";  // 通信相手のURL

HttpURLConnection conn = null;

try {
    final URL url = new URL(urlStr);

    conn = (HttpURLConnection)url.openConnection();
    conn.setRequestMethod("GET");

    conn.connect();

    if (conn.getResponseCode() == 200) {

        BufferedInputStream in = null;
        try {
            in = new BufferedInputStream(conn.getInputStream());

            while (true) {
                final int data = in.read();
                if (data == -1)
                    break;

                // @@@ 取得したデータを、どうにかする @@@
            }

        } finally {
            if (in != null)
                in.close();
        }
    }
} finally {
    if (conn != null)
        conn.disconnect();
}

proxy(プロキシ)を設定してHTTP通信を行うには、通信を行う前に、以下の処理を行います。

final String proxyServer = "~~";  // 自分の環境に合わせて書き換え
final String proxyPort = "8080";    // 自分の環境に合わせて書き換え

System.setProperty("http.proxyHost", proxyServer);
System.setProperty("http.proxyPort", proxyPort);

たった、コレだけです。


また、次の方法でもproxyを設定できます。
openConnectionの部分を、次のように変更します)

final String proxyServer = "~~";  // 自分の環境に合わせて書き換え
final int proxyPort = 8080;         // 自分の環境に合わせて書き換え

Socket socket = new Socket(proxyServer, proxyPort);
Proxy proxy = new Proxy(Proxy.Type.HTTP, socket.getRemoteSocketAddress());

conn = (HttpURLConnection)url.openConnection(proxy);

...

socket.close();

通信ごとにproxyを切り替えたい場合は、この方が便利でしょう。

[新幹線] 今日の一冊
神の狩人 2031探偵物語

神の狩人 2031探偵物語

  • 作者: 柴田 よしき
  • 出版社/メーカー: 文藝春秋
  • 発売日: 2008/06/25
  • メディア: 単行本

タグ:Java
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。