openConnection(proxy) metodoak ibilbide batekin eraikitzen du konexioa. Ezarri HTTP metodoa eta gorputza itzulitako HttpURLConnection-en eskaera hasi aurretik:

Proxy route = new Proxy(Proxy.Type.HTTP,
    new InetSocketAddress("proxy.example", 8080));
HttpURLConnection connection = (HttpURLConnection)
    URI.create("http://www.example.com/submit").toURL().openConnection(route);

try {
    connection.setConnectTimeout(5000);
    connection.setReadTimeout(15000);
    connection.setRequestMethod("POST");
    connection.setDoOutput(true);
    connection.setRequestProperty("Content-Type",
        "application/x-www-form-urlencoded; charset=UTF-8");

    byte[] form = "message=hello+proxy".getBytes(StandardCharsets.UTF_8);
    try (OutputStream out = connection.getOutputStream()) {
        out.write(form);
    }

    int status = connection.getResponseCode();
    System.out.println(status);
    InputStream response = status >= 400
        ? connection.getErrorStream() : connection.getInputStream();
    if (response != null) response.close();
} finally {
    connection.disconnect();
}

Adibideak formulario txiki bat bidaltzen du, bere egoera inprimatu eta erabili gabeko erantzun-korronte bat ixten du. Ordeztu azken urrats hori aplikazioaren erantzun-gorputzaren kudeaketarekin gorputza behar denean.

Proxyaren ostalari-izena eta portua route-ri dagozkio. Proxy konturik gabeko baimendutako formulario-proba publiko baterako, aukeratu HTTP helbidea HTTP proxy zerrendako sarrera batean. URLak formularioaren amaiera-puntua izaten jarraitzen du. Formulario-balio dinamikoetarako, erabili URLEncoder balio bakoitza kodetzeko, ez lotu ihes egin gabeko sarrera berdintzaile eta ampersand ikurrekin.

Irteera-korronteak prestatutako byteak bidaltzen ditu. Irakurri egoera idatzi eta itxi ondoren, eta aukeratu erantzun-korronte arrunta edo errorearena beharraren arabera. Arrakastatsua ez den HTTP erantzun batek aplikazioaren edo proxyaren errore-eduki erabilgarria izan dezake.

Erlazionatutako artikuluak