2012-09-25 68 views
0

我試圖從鏈接返回一個淨http響應遠程調用;但是,我不確定如何訪問正文中返回的信息。Ruby on Rails net http響應爲ajax調用

這是我到目前爲止有:

def get_info 
uri = URI.parse("somesite") 
response = Net::HTTP.get_response(uri) 
render :json => {:name => response.body} 
end 

$(document).ready(function(){ 
$('#get_info').bind("ajax:success", function(event, data, status, xhr) { 
    alert(data.name); 
}); 
}); 

這只是轉儲返回的XML來彈出。

回答

1

如果你想要做的任何形式的花哨的東西與我建議使用nokogiri響應:

require 'nokogiri' 
doc = Nokogiri::HTML(response.body) 

然後你就可以得到如標題只是:

title = doc.at_css('title').text 
#=> "Title of the page" 
+0

好吧,我將如何獲得XML元素的屬性? – Brian

+0

'doc = Nokogiri :: XML(response.body); doc.at_xpath('// element')',其中「element」是元素的名稱。如果你想要那個元素的文本,你可以使用:doc.at_xpath('// element').text'。有關詳細信息,請參閱:http://nokogiri.org/tutorials/searching_a_xml_html_document.html –

+0

我在這裏找到了以下工作:result = doc.xpath(「// row」)。attr(「name」)。text – Brian