在控制器方面,我得到了类似于
"{\"violation_date\":\"sdfsdf\",\"violation_time\":\"\"},{\"violation_date\":\"sdfdsf\",\"violation_time\":\"sdfsdf\"},{\"violation_date\":\"1233\",\"violation_
time\":\"\"},{\"violation_date\":\"test\",\"violation_time\":\"time\"}"这个类的类是String。我正试着解析这个。通过
JSON.parse(params_gotton)得到
JSON::ParserError (757: unexpected token at ',{"violation_date":"sdfdsf","violation_time":"sdfsdf"},{"violation_date":"1233","violation_time":""},{"violation_d
te":"test","violation_time":"time"}'):我在这里做错了什么。有什么建议吗?
发布于 2013-09-04 11:38:20
它是无效的json,这将起作用(使用[]):
require 'json'
jsn = '[{"violation_date":"sdfsdf","violation_time":""},
{"violation_date":"sdfdsf","violation_time":"sdfsdf"},
{"violation_date":"1233","violation_time":""},
{"violation_date":"test","violation_time":"time"}]'
JSON.parse(jsn) # => [{"violation_date"=>"sdfsdf", "violation_time"=>""}, {"violation_date"=>"sdfdsf", "violation_time"=>"sdfsdf"}, {"violation_date"=>"1233", "violation_time"=>""}, {"violation_date"=>"test", "violation_time"=>"time"}]要验证json字符串,可以使用:http://www.jslint.com/。和基本的json结构:http://json.org/
已更新
在你的情况下,试试这个:
JSON.parse('[' + params_gotton + ']')发布于 2013-09-04 12:10:53
接收到的字符串不包含适当的Json结构。
首先在适当的json结构中转换接收到的param,然后使用"JSON.parse(params_gotton)“解析它。
在上面接收到的数据中,所有的键和值都应该是一个键值对字符串格式。从接收到的数据中删除"\“符号。
肯定会很好的..。
https://stackoverflow.com/questions/18612595
复制相似问题