2010-04-29 2 views
4

Я разрабатываю приложение Rails, которое будет нуждаться в частом доступе к общедоступным API-интерфейсам, и я не уверен, что лучший способ разместить внешний API (SOAP/WSDL) в Rails-приложении, как насчет модели, как мы можем управлять этим ? Любые идеи, комментарии?Rails - лучший способ использовать внешний SOAP API?

ответ

3

Текущие конкурсы для "лучшей" библиотеки для употребления Внешние SOAP-услуги выглядят как Savon или Handsoap. Существует сравнение между двумя here

Я не могу комментировать handsoap, поскольку я не использовал его, я доволен Savon, который хорошо работает для меня.

Что касается структуры приложения, то я бы создал папку под lib для интерфейса, названного в честь внешнего объекта, а затем сохранил файлы там, используя функции namespacing rails.

Итак, у меня есть внешний интерфейс для системы Sentinel. Поэтому у меня есть RAILS_ROOT/lib/sentinel, а затем все классы внутри этой папки объявляются в модуле Sentinel.

+0

спасибо Стив, я также использую Savon в этот момент, но я не был уверен в лучшей практике тренировки этого в режиме рельсов. –

1

Первое, что нужно сделать, - посмотреть, есть ли какие-либо драгоценные камни для API, с которыми вы хотите взаимодействовать. Напишите небольшой класс обертки для драгоценного камня или просто включите его и используйте его там, где это необходимо.

Если вы хотите поговорить с услугой REST, я бы предложил камень отдыха клиента. Если вы хотите сделать что-то совершенно обычай, вы можете использовать HTTParty от Jon Nunemaker. Nokogiri, XML parser gem полезен также для использования XML-сервисов.

Смежные вопросы