CUBは子供の白熊

Java SE 8 実践プログラミングの練習問題を解く

第8章 その他の Java 8 機能を理解する : 問題 11 : Basic 認証

問題

パスワード保護(Basic 認証)された Web ページの内容を取得するプログラムを書け。

解答

ん~、一応コードは書くけど、Basic 認証しているサイトを知らないので、動作確認はなしね。

■ Basic 認証

private InputStream basicAuthentication(URL url, String user, String password)
    throws IOException {
    URLConnection connection = url.openConnection();
    // ユーザーコードとパスワードを Base64 でエンコード
    Base64.Encoder encoder = Base64.getEncoder();
    String auth = user + ":" + password;
    auth = encoder.encodeToString(auth.getBytes(StandardCharsets.UTF_8));

    connection.setRequestProperty("Authorization", "Basic " + auth);
    connection.connect();
    return connection.getInputStream();
}