2014-01-02 3 views
7

Зачем кому-то использовать драгоценный камень Фарадея против прямого использования Net :: HTTP? Какая польза от использования такой обертки?Зачем использовать Faraday через Net :: HTTP?

+0

Это собирается нарисовать мнения, а не факты. –

+0

Есть объективные причины использования Фарадея над Net :: HTTP. – davogones

ответ

10

Использование адаптера Net::HTTP в порядке, это просто привязка вашего кода к определенному интерфейсу, который может отличаться от альтернативных инструментов. Основной причиной использования Faraday является то, что он обертывает несколько адаптеров, один из которых - Net::HTTP. Если вы используете Faraday и начинаете с , вы можете позже решить использовать Excon, Typhoeus, Patron или EventMachine, не меняя более одной или двух конфигураций. Если бы вы использовали Net::HTTP напрямую, вам пришлось бы изменить много кода для конкретной реализации, чтобы переключиться на другой адаптер.

+1

Хорошее объяснение. Вы также должны указать промежуточное ПО. Например, я использую промежуточное программное обеспечение JSON для автоматического кодирования моего запроса как JSON и декодирования ответа от JSON. – davogones

+0

Фарадей также должен помочь нормализовать исключения во всех библиотеках, правильно? – user3084728

+1

Да @ user3084728, Фарадей будет улавливать исключения каждого адаптера и повторно бросать их как исключения Фарадея. –