Company logo
  • Empleos
  • Bootcamp
  • Acerca de nosotros
  • Para profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
    • Bootcamp
  • Para empresas
    • Inicio
    • Nuestro proceso
    • Planes
    • Pruebas
    • Nómina
    • Blog
    • Calculadora

0

115
Vistas
ROME custom user agent/reading Reddit RSS

So I'm trying to make a Discord bot that uses a Reddit RSS feed to post some info about new posts. I'm making this in Java and am currently working on pulling the RSS feed. Trouble is, Reddit rejects whatever user agent ROME uses by default, I cannot seem to find a feasible alternative to ROME short of implementing one myself, and the only solution I can find to set a custom user agent in ROME uses a bunch of deprecated functionality. How do I set a custom user agent in ROME?

8 months ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

I fixed my own problem by simply grabbing a standard InputStream of the feed and building the feed through that with SyndFeed feed = input.build(new XmlReader(stream));

8 months ago · Santiago Trujillo Denunciar

0

Does ROME allow for customizing the user agent?

If not, you should be able to make read-only JSON requests without needing authentication, for example "GET https://www.reddit.com/r/funny/new.json"

8 months ago · Santiago Trujillo Denunciar

0

With Apache HttpClient 4 and Rome 1.7.0 you can set the user agent string like this:

CloseableHttpClient customClient = HttpClients.custom()
                    .setUserAgent("Your custom user agent string here")
                    .build();
String url = "http://stackoverflow.com/feeds/tag?tagnames=rome";
try (CloseableHttpClient client = customClient) {
    HttpUriRequest request = new HttpGet(url);
    try (CloseableHttpResponse response = client.execute(request);
        InputStream stream = response.getEntity().getContent()) {
        SyndFeedInput input = new SyndFeedInput();
        SyndFeed feed = input.build(new XmlReader(stream));
        System.out.println(feed.getTitle());
    }
}

It is more lines of code than before, but easier to configure. They've deprecated the old Rome Fetcher.

8 months ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar empleo Planes Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2023 PeakU Inc. All Rights Reserved.