Un Client configurat nu are efect asupra unui ClientResource care încă folosește alt conector. Pentru ajutorul org.restlet.ext.httpclient din Restlet 2.4.4, legați resursa de acel client înainte de a-l porni:

Client connector = new Client(new Context(), Protocol.HTTPS);
connector.getContext().getParameters().set("proxyHost", "proxy.example");
connector.getContext().getParameters().set("proxyPort", "8080");

ClientResource resource = new ClientResource(
    "https://service.example/status");
resource.setNext(connector);
connector.start();
try {
    String body = resource.get().getText();
} finally {
    resource.release();
    connector.stop();
}

setNext(connector) este punctul de atașare. Contextul folosește cheile documentate proxyHost și proxyPort ale ajutorului, cu numele gazdă separat de schemă și port. Setați-le înainte de connector.start(). Pentru un endpoint HTTP public, aceste două câmpuri preiau o adresă și un port din lista de proxy HTTP.

Aceasta presupune că ajutorul implementat este extensia Apache menționată. Poate obține și valori implicite din JVM http.proxyHost și http.proxyPort; valorile explicite de context fac vizibil endpointul acestui conector.

Exemplul consumă corpul text, eliberează resursa și oprește conectorul. Utilizarea în streaming trebuie de asemenea să consume sau să elibereze reprezentarea, astfel încât conexiunile din pool să poată fi eliberate.

Articole similare