ROME ફીડ બાઇટ્સનું વિશ્લેષણ કરે છે; પ્રોક્સી માર્ગ અને ખાતું HTTP ક્લાયન્ટનું હોવું જોઈએ. પસંદ કરેલા JDK HttpClient માટે, નિશ્ચિત પ્રોક્સી તેના builder પર જાય છે:

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

પ્રોક્સી પ્રમાણીકરણ વિના મંજૂર જાહેર ફીડ પરીક્ષણ માટે, પ્લેસહોલ્ડર હોસ્ટ અને પોર્ટને 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 ભૂલ તેનો સ્ટ્રીમ ખુલ્લો ન રાખે.

બે ફીડ સ્રોત કૉલ્સ વચ્ચે JVM પ્રોક્સી ગુણધર્મો બદલ્યા વિના જુદી રીતે રૂપરેખાંકિત ક્લાયન્ટ વાપરી શકે છે. દરેક HTTP ક્લાયન્ટ પોતાના માર્ગનો માલિક છે જ્યારે ROME વિશ્લેષણના પગલાનો માલિક છે.

સંબંધિત લેખો