require 'json'
str = ' {
"body":
[{
"app_id": 34,
"properties": [
"beta",
"0.0.3b"
]
}]
, "code": 200 }'
a = JSON.parse(str)
p a['code'] #200
p a['body'] # [{"app_id"=>34, "properties"=>["beta", "0.0.3b"]}]
我需要a['body']
来包含原始JSON内容[{ "app_id": 34, "properties": [ "beta", "0.0.3b"]}]
更新:我使用的是ruby 1.9.3
答案 0 :(得分:1)
由于a['body']
被解析为JSON,并且您希望返回采用JSON格式,因此可以执行以下操作:
a['body'].to_json
=> "[{\"app_id\":34,\"properties\":[\"beta\",\"0.0.3b\"]}]"
答案 1 :(得分:1)
我无法复制您所看到的问题:
require 'json'
str = ' {
"body":
[{
"app_id": 34,
"properties": [
"beta",
"0.0.3b"
]
}]
, "code": 200 }'
a = JSON.parse(str)
a # => {"body"=>[{"app_id"=>34, "properties"=>["beta", "0.0.3b"]}], "code"=>200}
a['code'] # => 200
a['body'] # => [{"app_id"=>34, "properties"=>["beta", "0.0.3b"]}]
RUBY_VERSION # => "2.2.2"
或者用1.9.3重新运行:
a['code'] # => 200
a['body'] # => [{"app_id"=>34, "properties"=>["beta", "0.0.3b"]}]
RUBY_VERSION # => "1.9.3"