正在使用 Ruby 解析 JSON 供稿以用于 Dashing 仪表板
Parsing JSON feed with Ruby for use in Dashing Dashboard
首先post在这里,所以你知道,要好吗?
我正在使用服务器上的 JSON 提要在 Dashing (http://dashing.io/) 中设置仪表板,如下所示:
{
"error":0,
"message_of_the_day":"Welcome!",
"message_of_the_day_hash":"a1234567890123456789012345678901",
"metrics":{
"daily":{
"metric1":"1m 30s",
"metric2":160
},
"monthly":{
"metric1":"10m 30s",
"metric2":"3803"
}
},
我一直在尝试从 Feed 中获取数据,并且在 Python 之前成功地做到了:
import json
import urllib2
data = {
'region': "Europe"
}
req = urllib2.Request('http://192.168.1.2/info/handlers/handler.php')
req.add_header('Content-Type', 'application/json')
response = urllib2.urlopen(req, json.dumps(data))
print response.read()
然而我还没有成功,并且在 Ruby 中出现了很多错误。
在 Ruby 中,有人能指出正确的方向来解析这个吗?
我尝试编写一个基本脚本(保持简单并且在 Dashing 之外)不会提取任何数据。
#!/usr/bin/ruby
require 'httparty'
require 'json'
response = HTTParty.get("http://192.168.1.2/info/handlers/handler.php?region=Europe")
json = JSON.parse(response.body)
puts json
在 python 代码中,您将发送一个 JSON 并添加一个 header。我敢打赌在 ruby 中这样做也是有意义的。下面的代码是未经测试的,因为我无法测试它,但它应该会引导你进入正确的方向:
#!/usr/bin/ruby
require 'httparty'
require 'json'
response = HTTParty.post(
"http://192.168.1.2/info/handlers/handler.php",
headers: {'Content-Type', 'application/json'},
query: { data: { 'region' => "Europe" } }
# or maybe query: { 'region' => "Europe" }
)
puts response.inspect
首先post在这里,所以你知道,要好吗?
我正在使用服务器上的 JSON 提要在 Dashing (http://dashing.io/) 中设置仪表板,如下所示:
{
"error":0,
"message_of_the_day":"Welcome!",
"message_of_the_day_hash":"a1234567890123456789012345678901",
"metrics":{
"daily":{
"metric1":"1m 30s",
"metric2":160
},
"monthly":{
"metric1":"10m 30s",
"metric2":"3803"
}
},
我一直在尝试从 Feed 中获取数据,并且在 Python 之前成功地做到了:
import json
import urllib2
data = {
'region': "Europe"
}
req = urllib2.Request('http://192.168.1.2/info/handlers/handler.php')
req.add_header('Content-Type', 'application/json')
response = urllib2.urlopen(req, json.dumps(data))
print response.read()
然而我还没有成功,并且在 Ruby 中出现了很多错误。 在 Ruby 中,有人能指出正确的方向来解析这个吗? 我尝试编写一个基本脚本(保持简单并且在 Dashing 之外)不会提取任何数据。
#!/usr/bin/ruby
require 'httparty'
require 'json'
response = HTTParty.get("http://192.168.1.2/info/handlers/handler.php?region=Europe")
json = JSON.parse(response.body)
puts json
在 python 代码中,您将发送一个 JSON 并添加一个 header。我敢打赌在 ruby 中这样做也是有意义的。下面的代码是未经测试的,因为我无法测试它,但它应该会引导你进入正确的方向:
#!/usr/bin/ruby
require 'httparty'
require 'json'
response = HTTParty.post(
"http://192.168.1.2/info/handlers/handler.php",
headers: {'Content-Type', 'application/json'},
query: { data: { 'region' => "Europe" } }
# or maybe query: { 'region' => "Europe" }
)
puts response.inspect