Я предпочитаю httpclient вместо Net :: HTTP.
client = HTTPClient.new
puts client.get_content('http://www.example.com/index.html')
HTTParty - хороший выбор, если вы создаете класс, который является клиентом для службы. Это удобный миксин, который дает вам 90% того, что вам нужно. Посмотрите, как коротки клиенты Google и Twitter в примерах .
И чтобы ответить на ваш второй вопрос: нет, я бы не включил эту функциональность в контроллер - вместо этого я бы использовал модель, если это возможно, для инкапсуляции деталей (возможно, с использованием HTTParty) и просто вызывал бы ее из контроллера.