收藏
回答

JSON读取问题

console.log(res.data);
 
console.log(res.data.message);
 
console.log(res.data.code);

分别打印3条数据,结果如下:

{"code": 200, "message": "success"}
undefined
undefined


突然这个json就读不到数据了,求大神帮忙看看这是啥情况

回答关注问题邀请回答
收藏

5 个回答

  • 咻咻superme~
    咻咻superme~
    2018-10-15

    像是异步的问题,打印放在接口请求成功的方法里试试

    2018-10-15
    有用 1
    回复 1
    • 那是一只熊
      那是一只熊
      2018-10-15

      原因是wx.uploadFile的success(res)中,res不接受object对象的,默认转成string了

      2018-10-15
      回复
  • 半寸灰
    半寸灰
    2018-10-12

    res.data  这个是字符串吧


    得转json

    2018-10-12
    有用 1
    回复 11
    • 那是一只熊
      那是一只熊
      2018-10-12

      好像也不是这个问题,接口都是同样写法的,但是别的地方就能正常读取诶

      2018-10-12
      回复
    • 半寸灰
      半寸灰
      2018-10-12回复那是一只熊

      你自己都不确定

      2018-10-12
      回复
    • 卢霄霄
      卢霄霄
      2018-10-12回复那是一只熊

      我看起来也觉得就是楼主说的问题。。别好像了。。你试试呢

      res.data = JSON.parse(res.data)

      2018-10-12
      3
      回复
    • 那是一只熊
      那是一只熊
      2018-10-12回复卢霄霄

      还真是,奇怪了,接口都是统一写的诶

      2018-10-12
      回复
    • 卢霄霄
      卢霄霄
      2018-10-12回复那是一只熊

      感觉有地方多转了一次JSON

      2018-10-12
      1
      回复
    查看更多(6)
  • 方法总比困难多
    方法总比困难多
    2018-10-15

    我也是用这个,可以转

    2018-10-15
    有用
    回复
  • J.C
    J.C
    2018-10-12

    字符串不是JSON对象,没法通过key读value。

    把字符串parse成JSON对象就行了。

    2018-10-12
    有用
    回复
  • n
    n
    2018-10-12

    let obj = JSON.parse(res.data);

    console.log(obj.message);


    2018-10-12
    有用
    回复
登录 后发表内容