CaveShao
2017-04-25 03:47
采纳率: 100%
浏览 2.0k
已采纳

为什么获取的 json 文件不需要解析就能使用?

图片说明
在 success 函数中加入 var r = JSON.parse(data); 就会出现错误

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • 已采纳

    你这个借口支持jsonp,返回的数据已经是json对象了,不需要JSON.parse了。

    jsonp实际就是js代码,执行你的回调的时候返回的参数就是json对象
    https://en.wikipedia.org/w/api.php?action=query&titles=Main%20Page&prop=revisions&rvprop=content&format=json&callback=abc

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 当作看不见 2017-04-25 04:18

    看返回的具体内容,并不是每一个请求都是返回json的。返回的是json 你才能这样写。

    评论
    解决 无用
    打赏 举报
  • 夕阳雨晴 2017-04-25 04:45

    先要确认返回的究竟是什么,最好通知console。log()将返回的data打印出来看看。https://segmentfault.com/q/1010000006800687?_ea=1134370

    评论
    解决 无用
    打赏 举报
  • robake 2017-04-25 05:29

    jquery ajax里的dataType就是声明数据格式,你填的jsonp,肯定是json格式了。

    评论
    解决 无用
    打赏 举报
  • Chocolyte 2017-04-25 05:35

    你可以手动先判断下格式,如果不是json格式,则转化为json格式再做处理,如果是则直接处理就行了。

    评论
    解决 无用
    打赏 举报
  • dongguiyu521 2017-04-25 08:14

    返回的格式已经声明了dataType

    评论
    解决 无用
    打赏 举报
  • java午夜 2017-04-25 08:34

    其实你可以用alert(data),把data的数据显示一下,看看你获取的data.batchcomplete是不是这样取

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题