JSON.parse返回错误:
# Ruby code in IRB
require 'json'
time_now = t.strftime("%a, %d %b %Y %H:%M:%S GMT")
hash = '"date":' + time_now.to_s
hash_json = JSON.parse(hash)
错误:
JSON :: ParserError:743:'太阳,2017年5月14日21:19:02 GMT'的意外令牌
我的需要是拥有一个密钥/值为:
的JSON哈希# JSON hash
"date": "Sun, 14 May 2017 21:19:02 GMT"
有什么见解?我在几个方面尝试了这个,但每次遇到同样的问题。
答案 0 :(得分:2)
您的哈希需要像这样定义:hash = {"date" => time_now}
。
此外,JSON.parse
从JSON格式的字符串返回哈希。 Hash有一个方法to_json
,反之亦然:
require 'json'
time_now = Time.now.strftime("%a, %d %b %Y %H:%M:%S GMT")
hash = {'date' => time_now}
hash_json = hash.to_json
答案 1 :(得分:0)
您没有正确创建哈希。这是不正确的:
hash = {'"date":' + time_now}
应该是:
hash = {'date' => time_now}
答案 2 :(得分:-1)
Json解析时可以使用,数据包含json结构; 所以,hash ='" date":' + time_now.to_s问题在这里
hash = {"date"=> time_now.to_s}