收藏
回答

在微信开发者工具上能获取到头像的url,但是在手机上测试(已授权),头像的url为空?

wx.getUserInfo({

            success: res => {

              this.globalData.userInfo = res.userInfo

              this.globalData.nickname = res.userInfo.nickName

              //获取用户头像

              var userInfo = res.userInfo

              var avatarUrl = userInfo.avatarUrl; //获取微信用户头像存放的Url 

              wx.getImageInfo({

                src: avatarUrl,

                success: function (res) {       //访问存放微信用户头像的Url 

                  that.globalData.userimg = res.path

                }

              })

              console.log(that.globalData.userimg)

              if (this.userInfoReadyCallback{

                this.userInfoReadyCallback(res)

              }


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

4 个回答

  • 四喜丸子
    四喜丸子
    2021-06-29

    发现微信开发工具和手机 通过getUserInfo 获取的头像的路径不一样 开发工具获取的是对的 但是手机测试的时候不对 开发工具获取的可以显示但是手机获取的不能显示

    开发工具获取的https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TwGTfTJ2GuAvvKecNTC3ia8icrVFs9mSkfSdysuOdt3SrqELZmk60Sk6UrdYAQk8iayG2GemULRKBJuia9WR5A/132  

    手机测试获取的

    https://thirdwx.qlogo.cn/mmopen/vi_32/POgEwh4mIHO4nibH0KlMECNjjGxQUq24ZEaGT4poC6icRiccVGKSyXwibcPq4BWmiaIGuG1icwxaQX6grC9VemZoJ8rg/132     

    2021-06-29
    有用
    回复
  • 睡前原谅一切
    睡前原谅一切
    2021-02-22

    你调用getImageInfo头像的域名没加。

    还有就是需要判断getUserInfo:ok的时候再设置。

      getUserInfo(e) {
        if (e.detail.errMsg === 'getUserInfo:ok') {
          wx.setStorageSync('avatarUrl', e.detail.userInfo.avatarUrl)
          wx.setStorageSync('nickName', e.detail.userInfo.nickName)
          this.setData({
            nickName: e.detail.userInfo.nickName,
            avatarUrl: e.detail.userInfo.avatarUrl,
            isCanDraw: !this.data.isCanDraw
          })
        }
      }
    
    2021-02-22
    有用
    回复 7
    • 睡前原谅一切
      睡前原谅一切
      2021-02-22
      2021-02-22
      回复
    • 荞
      2021-02-22
      是直接加在src上吗(我是小白)  如果是配置合法域名的话已经配置过了  已经试了您说的方法  但是手机上头像还是不能显示  开发者工具就没这个问题
      2021-02-22
      回复
    • 睡前原谅一切
      睡前原谅一切
      2021-02-22回复
      小程序后台 开发设置里 添加downloadFile合法域名 域名为你获取到的头像地址。打印下res.userInfo.avatarUrl 看看是啥
      2021-02-22
      回复
    • 荞
      2021-02-22回复睡前原谅一切
      确实是我的头像的链接
      2021-02-22
      回复
    • 睡前原谅一切
      睡前原谅一切
      2021-02-22回复
      把这个链接的域名 配置到downloadFIle域名里
      2021-02-22
      回复
    查看更多(2)
  • Charb
    Charb
    2021-02-22

    手机测试打开调试,按照楼上所说位置打印信息,看看用不头像是否获取出来

    2021-02-22
    有用
    回复 1
    • 荞
      2021-02-22
      可以打印的  在开发者工具上没有问题  能成功获取url  也能显示  但是手机上就不行
      2021-02-22
      回复
  • 小杏
    小杏
    2021-02-22

    你是指console出来的为空吗?你应该在that.globalData.userimg = res.path 下面打印

    2021-02-22
    有用
    回复 5
    • 荞
      发表于移动端
      2021-02-22
      不是的 在开发者工具上可以看到打印出来的url 发帖头像也能正常显示 但是在手机上测试 发现发帖的时候不能显示头像(我做的是论坛)到数据库里看 头像的部分也是null
      2021-02-22
      回复
    • 小杏
      小杏
      2021-02-22回复
      那你的合法域名加了吗
      2021-02-22
      回复
    • 菱玉
      菱玉
      2021-02-22回复
      获取图片信息需要配置合法域名
      2021-02-22
      回复
    • 荞
      2021-02-22回复菱玉
      request和downloadfile的合法域名都已经配置了
      2021-02-22
      回复
    • 荞
      2021-02-22回复小杏
      request和downloadfile的都配置了
      2021-02-22
      回复
登录 后发表内容
问题标签