openConnection(proxy) yana gina haɗin tare da hanya. Saita hanyar HTTP da jikin a kan HttpURLConnection da aka mayar kafin fara buƙatar:

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

Misalin yana aika ƙaramin fom, yana buga matsayinsa kuma yana rufe rafin amsa da ba a yi amfani da shi ba. Maye gurbin wannan matakin na ƙarshe da kulawar jikin amsa na aikace-aikacen lokacin da ake buƙatar jikin.

Sunan mai masaukin wakili da tashar jiragen ruwa na route ne. Don gwajin fom na jama'a da aka yarda ba tare da asusun wakili ba, zaɓi adireshin HTTP daga wani shigarwa a cikin jerin wakilan HTTP. URL ɗin ya ci gaba da kasancewa ƙarshen fom ɗin. Don ƙimar fom masu canzawa, yi amfani da URLEncoder don ɓoye kowace ƙima maimakon haɗa shigarwar da ba a tsere ba da alamun daidaito da ampersand.

Rafin fitarwa yana aika bytes ɗin da aka shirya. Karanta matsayin bayan rubutu da rufewa, sannan zaɓi rafin amsa na yau da kullun ko na kuskure yadda ya dace. Amsar HTTP da ba ta yi nasara ba na iya ƙunsar ingantaccen abun ciki na kuskuren aikace-aikace ko wakili.

Labarai masu alaƙa