Как бороться с ответами Savon? - PullRequest
0 голосов
/ 02 июня 2011

Я не понимаю людей, которые предпочитают Savon Soap4r.

Как я могу получить атрибуты возвращаемого объекта в ответе Savon?С soap4r это так же чисто, как и вызов геттера!

Очевидно, в Savon мне нужно явно проанализировать ответ и пройти response_hash.Это намного хуже, чем мыльный подход.Я что-то не так понимаю, или Savon просто soap4r худшего качества?

edit: этот вопрос был из-за того, что savon должным образом не поддерживал ответы multi_ref, как указано в комментарии к ответу.

1 Ответ

1 голос
/ 03 июня 2011

С https://github.com/raldred/savon/blob/master/lib/savon/response.rb

  # You can also let Savon translate the SOAP response body to a Hash.
  #
  #   response.to_hash
  #   => { :findUserByIdResponse => {
  #   =>   :id => "123",
  #   =>   :username => "eve"
  #   =>   :active => true
  #   => }

Таким образом, вы должны иметь возможность вызывать хеш [: object], который будет возвращать атрибут.

Вам не нужно ходить по объекту ответа, просто вызовите to_hash.

...