ROME د feed بایټونه تحلیلوي؛ د پروکسي لار او حساب باید د HTTP کلاینټ وي. د ټاکل شوي JDK HttpClient لپاره، ثابت پروکسي د هغه پر builder کیږي:

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

د پروکسي تصدیق پرته د اجازه ورکړل شوي عامه feed ازموینې لپاره، ځای نیونکی هوسټ او پورټ د HTTP پروکسي لیست څخه د یو نوماند سره بدل کړئ. هغه کلاینټ ته د ځای پرځای کولو تصدیق او د غوښتنو محدودیتونه ورزیات کړئ. وروسته له دې چې منلو وړ ځواب ترلاسه کړ، جریان ROME ته وسپارئ:

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

نوي imports com.rometools.rome.io.XmlReader او SyndFeedInput دي. دلته body ترلاسه شوی InputStream دی او contentType د HTTP Content-Type دی. XmlReader BOM، هغه میټاډاټا او د XML اعلان په پام کې نیسي. لومړی په خپل سري charset سره ډیکوډ کول کېدای شي ګټور شواهد له لاسه ورکړي.

له تحلیل مخکې د HTTP حالت وګورئ. که نه، د پروکسي ننوتلو پاڼه یا رد کېدل کېدای شي د XML غلطۍ په توګه ښکاره شي. د رد شوو ځوابونو لپاره هم بدنونه خوشې کړئ، ترڅو د HTTP غلطي خپل جریان پرانیستی نه پرېږدي.

دوه feed سرچینې کولای شي د غوښتنو ترمنځ د JVM پروکسي ځانګړنې نه بدلوي او په بېلابېلو ډولونو تنظیم شوي کلاینټونه وکاروي. هر HTTP کلاینټ خپله لار لري، پداسې حال کې چې ROME د تحلیل ګام لري.

اړوندې مقالې