XML в строку запроса - PullRequest
       0

XML в строку запроса

0 голосов
/ 10 марта 2011

Каков наилучший вариант для создания строки запроса (URL-параметров) из XML-документа в Ruby?

xml_string = <abc><session>1234</session><description>some_description</description></abc>

query_string = # I want here "?abc=session......."

Ответы [ 2 ]

2 голосов
/ 10 марта 2011
xml_string = "<abc><session>1234</session><description>some_description</description></abc>"
result = "?"+Hash.from_xml(xml_string).to_query
0 голосов
/ 10 марта 2011

XmlSimple - хороший драгоценный камень.

require 'rubygems'
require 'xmlsimple'

data = XmlSimple.xml_in(xml_string)
url_params = xml_to_url_params(data, "abc")


def xml_to_url_params(xml_data, root)
  elements = []
  data[root].each do |item|
    item.each do |name, value|
      elements << "#{CGI::escape(name)}=#{CGI::escape(value)}"
    end
  end
  elements.join("&")
end

пс. не проверял этот код, поэтому могут быть ошибки;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...