1

n00bRESTの質問。APIのエンドポイントにGETリクエストを送信し、適切なXML応答を取得しています。私が持っている質問は、Rubyを使用してサーバーのREST応答で特定のXML要素の値を取得するにはどうすればよいですか?

したがって、要素の1つが「Body」であり、その値「Blahblahblah」を変数に割り当てたいとします。

XML応答の一部:

<Body>Blah blah blah</Body>

応答でそれをどのように行いますか?基本的にこんなことをしたい

variable = params["Body"]

前もって感謝します!

4

3 に答える 3

1

最善の解決策は、RestClientまたはHTTPartyを使用して、応答を解析することです。

それ以外の場合は、Nokogiriなどのライブラリを使用して応答自体を解析する必要があります。

doc = Nokogiri.XML(response)
variable = doc.at("body").text
于 2012-11-02T02:00:30.167 に答える
1

ある種のXMLパーサーを使用することをお勧めします。

XMLドキュメントをルビー配列とハッシュに変換するXmlSimpleのようなものが必要なようです。リンクされているページでの使い方の例はたくさんあります。

注意すべきことの1つは、XMLからネイティブコンテナへのマッピングが不完全であることです。複雑なドキュメントを扱っている場合は、Nokogiriのようなより堅牢なパーサーを使用することをお勧めします。

于 2012-11-02T02:01:04.647 に答える
0

完全なXMLオブジェクトマッピングが必要な場合、HappyMapperはまともなライブラリですが、現在はあまりアクティブではありません。どのソースのXMLでも機能するため、@Fitzsimmonsや@MarkThomasで言及されているライブラリのようなものでHTTPリクエストを実行する必要があります。

于 2012-11-02T02:04:42.587 に答える