收藏
回答

为什么php服务端json_encode后返回数据不能获取元素值


这个是re.data的值,我用re.data.appId,就是获取不到值呢

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

4 个回答

  • 金钱豹
    金钱豹
    2018-12-18

    后台返回的不是json格式,是字符串,让后台加个响应头的信息,表明是json格式,前端直接就用了



    2018-12-18
    有用
    回复 1
    • 曾德云
      曾德云
      2018-12-18

      问题我解决了,我不知道具体错在哪里,我理了一遍函数,我估计数据输出的时候有空格或者什么,

      2018-12-18
      回复
  • 曾德云
    曾德云
    2018-12-17

    var aaa = re.data.replace(/\ufeff/g, "");

    console.log(aaa.return_code);



    还是不行

    2018-12-17
    有用
    回复
  • 微盟
    微盟
    2018-12-17

    目测你这个是json字符串吧,parse

    2018-12-17
    有用
    回复 6
    • 曾德云
      曾德云
      2018-12-17

      parse要报错

      2018-12-17
      回复
    • 微盟
      微盟
      2018-12-17回复曾德云

      返回的json中估计包含bom头,去掉估计就可以了

      2018-12-17
      回复
    • 曾德云
      曾德云
      2018-12-17回复微盟

      我确认过无数次,没有BOM表头

      2018-12-17
      回复
    • 曾德云
      曾德云
      2018-12-17回复曾德云

      我只是改过本身文件的编码格式,不改变的话,body里面带了中文就要乱码

      2018-12-17
      回复
    • 微盟
      微盟
      2018-12-18回复曾德云

      出现这种问题 只可能是返回的JSON格式不对。你怎么确认bom头的?你这样试试let data = res.data.s u b str(3);console.log(JSON.parse(data))

      2018-12-18
      回复
    查看更多(1)
  • 这都申请了
    这都申请了
    2018-12-17

    https://developers.weixin.qq.com/community/develop/doc/4d46b4270592da55a9e3489c99ece170

    https://developers.weixin.qq.com/community/develop/doc/99c8910bf82369d49fa98fa92bcf8563?highLine=php%2520json 看看这两个帖子有没有帮助

    2018-12-17
    有用
    回复 4
    • 曾德云
      曾德云
      2018-12-17

      看了这么多也没有找到问题在哪

      2018-12-17
      回复
    • 这都申请了
      这都申请了
      2018-12-17回复曾德云

      我发的链接加上二楼的回复绝对可以解决你的所有问题

      2018-12-17
      回复
    • 曾德云
      曾德云
      2018-12-17回复这都申请了

      var aaa = re.data.replace(/\ufeff/g, "");

      console.log(aaa.return_code);


      加了这个代码还是不行

      2018-12-17
      回复
    • 这都申请了
      这都申请了
      2018-12-18回复曾德云

      var aaa = JSON.parse(re.data.replace(/\ufeff/g, ""))

      2018-12-18
      回复
登录 后发表内容