为什么Httparty没有获取源代码?

时间:2012-05-09 17:54:47

标签: ruby-on-rails ruby sinatra

我正在编写一个应用程序,它应该获取页面的源代码并显示它。

它将是一个简单的JSON格式,无论是HTML还是CSS。所以我想要获取的网站的源代码如下所示:

{"latitude" : "n/a","longitude" : "n/a","internalTemperature" : "n/a","light" : "n/a","distance" : "n/a" ...

每次使用httparty,我都会得到这样的结果:

#, @headers={"x-frame-options"=>["sameorigin"], "x-xss-protection"=>["1; mode=block"], "content-type"=>["text/html;charset=utf-8"], "content-length"=>["86692"], "server"=>["WEBrick/1.3.1 (Ruby/1.9.2/2012-04-20)"], "date"=>["Wed, 09 May 2012 17:46:34 GMT"], "connection"=>["close"]}> 

那种类型的数据是什么?我不明白。

我的erb文件中有这样一行:

<%= Representative.get('http://0.0.0.0:4568/').inspect %>

在我的.rb文件中:

class Representative
  include HTTParty
end

显然,我所访问的网站位于我的本地主机上,因此您无法看到它,但它会返回一个简单的JSON,如我所示。

1 个答案:

答案 0 :(得分:1)

不要inspect结果。 Httparty请求的结果应该是JSON,如果您的URL指向JSON文档,则解码为哈希。如果没有,您可以告诉Httparty明确解码为JSON。

请参阅“Changing Body Type To JSON Using HTTParty”。