
我拿到的json本质是一个JS的赋值语句,如:
var data = { "key": "value" }; 对于这种格式,是没办法直接使用iOS内置的方法来解析的。我的解决方案是:取回数据后,先转为NSString格式,然后通过字符串方法去掉var data =和尾部的;,再转为NSData格式,再用json
序列化方法转换出来。
如果有更好的方案,也希望有同学能分享出来学习哈。
1 youxiachai 2015 年 5 月 25 日 蛋碎..这个不叫json...是直接的js脚本.. 如果是抓网页的话,那就无解了..(如果可能倒是可以eval)取值 如果是后台返回的..明显那个人的实现有问题.. |
2 publicID001 2015 年 5 月 25 日 JavascriptCore |
3 inmyfree 2015 年 5 月 25 日 @youxiachai 洗洗睡吧 |
4 jun4rui 2015 年 5 月 25 日 这个接口是谁写的?这不是json啊。 |
5 tuoxie007 2015 年 5 月 25 日 via iPhone 想办法执行一下js脚本吧,比如比较土的办法,用webview |
6 pysama OP |
7 tinyhill 2015 年 5 月 25 日 via iPhone js 不是可以直接执行吗?再不济用 eval 啊 |
8 yangxiongguo 2015 年 5 月 25 日 N 年前的果然,返回后直接执行。 |
9 lixia625 2015 年 5 月 25 日 |
10 saber000 2015 年 5 月 25 日 正则贪心匹配花括号,这样: \{.*\} |
11 luciferlu 2015 年 5 月 25 日 可以算是JSONP吧,http://en.wikipedia.org/wiki/JSONP |
14 learnshare 2015 年 5 月 25 日 这是 Javascript,可以 eval(),不过不建议这么干 |
15 WildCat 2015 年 5 月 25 日 String 替换是最好的方式了吧,eval() 很浪费性能,还得初始化个 JavascriptCore |
16 msg7086 2015 年 5 月 25 日 找到第一个等号和最后一个分号,然后strip掉嘛 |
17 pysama OP 集思广益,一起谢过LS的各位同仁指点哈 |
18 bombless 2015 年 5 月 25 日 你可以爬ast啊 这种工具我记得有一些不错的 |
21 typcn 2015 年 5 月 25 日 如果你确定那个 var data 不会变,这就是最好/最快的办法了。 如果可能变的话,就放到 webview 里面运行一下 |
22 rcmerci 2015 年 5 月 26 日 我擦。。这是json吗 |