openConnection(proxy) اړیکه د یوې لارې سره جوړوي. د غوښتنې له پیل مخکې په بیرته راګرځېدلي HttpURLConnection باندې د HTTP طریقه او بدن وټاکئ:

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();
}

بېلګه یوه کوچنۍ فورمه لېږي، حالت یې چاپوي او یو نه کارول شوی د ځواب جریان بندوي. کله چې بدن ته اړتیا وي، هغه وروستی ګام د اپلیکیشن د ځواب-بدن سمون سره بدل کړئ.

د پراکسي کوربه نوم او پورټ route پورې اړه لري. د پراکسي حساب پرته د اجازه ورکړل شوې عامه فورمې ازموینې لپاره، د د HTTP پراکسي لړلیک له یوې ننوتنې څخه HTTP پته وټاکئ. URL د فورمې د پای نقطه پاتې کېږي. د فورمې د متغیرو ارزښتونو لپاره URLEncoder وکاروئ ترڅو هر ارزښت کوډ شي، پرته له دې چې نه تښتول شوي ننوتل د مساوي او امپرسنډ نښو سره یوځای کړئ.

د وتنې جریان چمتو شوي بایټونه لېږي. له لیکلو او بندولو وروسته حالت ولولئ، بیا د اړتیا سره سم عادي یا د تېروتنې د ځواب جریان وټاکئ. یو ناکام HTTP ځواب کېدای شي د اپلیکیشن یا پراکسي ګټور تېروتنه ولري.

اړوندې مقالې