Restkit JSON 错误解析 1969/12/07 到 1970/01/25 GMT 范围内的日期
Posted
技术标签:
【中文标题】Restkit JSON 错误解析 1969/12/07 到 1970/01/25 GMT 范围内的日期【英文标题】:Restkit JSON error parsing dates in range 1969/12/07 to 1970/01/25 GMT 【发布时间】:2014-09-17 23:26:41 【问题描述】:当遇到 1969/12/08 到 1970/01/25 GMT 范围内的日期时运行 Restkit 0.23 和 ios7.1.2 和 iOS8gms,解析为 JSON 失败并出现错误:[datasource.table.values.property]: Parsing日期 N 未被识别为日期格式...其中 N 是秒数。 我无法确定正在使用的 JSON 解析器。 Restkit 文档提到 YAJL 或 SBJSON 是可插入的。 如果有人可以建议如何识别正在使用的解析器并更改为另一个解析器,将不胜感激。否则,如果任何人都可以建议一个替代解决方案,这也会有所帮助。
【问题讨论】:
【参考方案1】:这是使用 FlexJSON 并且是 FlexJSON 的已知功能的后端的问题: (http://sourceforge.net/p/flexjson/discussion/686321/thread/029d17be/)。 尝试使用 JSONDeserializer 但 Flexjson 在将 Unix 时间戳解析为 Date 对象时遇到问题,前提是日期在 1969 年 12 月 7 日至 1970 年 1 月 25 日的范围内。该范围之外的所有其他日期都可以正常解析。它给出的错误是:[JSONException: : Parsing date 21600000 was not Recognized as a date format]
因此,RestKit 使用的 iOS 原生 JSON 解析器完全没有问题,RestKit 只是忠实地传回服务器错误消息。
【讨论】:
以上是关于Restkit JSON 错误解析 1969/12/07 到 1970/01/25 GMT 范围内的日期的主要内容,如果未能解决你的问题,请参考以下文章
在 Objective C 中使用 RestKit 解析复杂的 JSON
iOS RestKit 0.2 解析本地 Json 的最佳方法是啥