ROME analizas la bajtojn de la fluo; la prokurila vojo kaj konto apartenu al la HTTP-kliento. Por elektita JDK HttpClient, fiksa prokurilo apartenas al ĝia konstruilo:

HttpClient client = HttpClient.newBuilder()
    .proxy(ProxySelector.of(
        new InetSocketAddress("proxy.example", 8080)))
    .build();

Por permesita testo de publika fluo sen prokurila aŭtentikigo, anstataŭigu la anstataŭan gastiganton kaj pordon per kandidato el la listo de HTTP-prokuriloj. Aldonu la aŭtentikigon de la deplojo kaj la limojn de petoj al tiu kliento. Post kiam ĝi ricevas akcepteblan respondon, transdonu la fluon al ROME:

try (XmlReader reader = new XmlReader(body, contentType)) {
    SyndFeed feed = new SyndFeedInput().build(reader);
}

La modernaj importoj estas com.rometools.rome.io.XmlReader kaj SyndFeedInput. Ĉi tie body estas la ricevita InputStream kaj contentType estas la HTTP Content-Type. XmlReader konsideras la BOM, tiujn metadatenojn kaj la XML-deklaracion. Malĉifri unue per arbitra signaro povas forĵeti utilajn pruvojn.

Kontrolu la HTTP-statuson antaŭ analizi. Alie prokurila ensaluta paĝo aŭ rifuzo povas aperi kiel XML-eraro. Liberigu la korpojn ankaŭ por rifuzitaj respondoj, por ke HTTP-eraro ne lasu sian fluon malfermita.

Du fluaj fontoj povas uzi malsame agorditajn klientojn sen ŝanĝi la prokurilajn ecojn de la JVM inter vokoj. Ĉiu HTTP-kliento posedas sian vojon, dum ROME posedas la analizan paŝon.

Rilataj artikoloj