收藏
回答

关于获取openid问题大bug

问题模块
客户端

苹果手机获取的时候不能第一次获取!只有打开调试就可以获取!安卓就可以!求解决!

急!十万火急 !!!!!!!


最后一次编辑于  2017-03-29  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

6 个回答

  • 六·四
    六·四
    2017-09-18

    是不是没有设置安全域名,在手机上面测试的时候,不调试也会不能正常运行啊、?

    2017-09-18
    赞同
    回复
  • 遇见@🐎💨
    遇见@🐎💨
    2017-03-29

    写法有问题,要这么写:


    wx.login({

          success: function (res) {

            wx.setStorageSync('jscode', res.code);


            wx.getUserInfo({

                success: function (res) {


                 }

          })

        })


    2017-03-29
    赞同
    回复
  • 逝水
    逝水
    2017-03-29

    写的就有问题。

    login

    getUserInfo

    都是异步处理的。

    一个处理完了再处理另一个。

    2017-03-29
    赞同
    回复
  • 永远的24号
    永远的24号
    2017-03-29

    怎么破?一楼


    2017-03-29
    赞同
    回复
  • 永远的24号
    永远的24号
    2017-03-29

    wx.login({

          success: function (res) {

            wx.setStorageSync('jscode', res.code);

          }

        })


        // 获取encryptedData和iv

        wx.getUserInfo({

          success: function (res) {

            // console.log(res)

            wx.setStorageSync('encryptedData', res.encryptedData);

            wx.setStorageSync('iv', res.iv);

          },

          fail: function () {

            // fail

          },

          complete: function () {

            // complete

          }

        })



        //  获取openid      

        var encryptedData = wx.getStorageSync('encryptedData');

        var iv = wx.getStorageSync('iv');

        var that = this;

        var openid = {

          "cmd": "GetOpenid",

          "jscode": wx.getStorageSync('jscode'),

          "openid": '1234567890',

          "encryptedData": encryptedData,

          "iv": iv

        }

        wx.request({

          url: common.data_Url,

          data: JSON.stringify(openid),

          method: 'POST',

          header: { 'content-type': 'application/json' },

          success: function (res) {

            console.log(res);

            console.log("这是openid-------" + res.data.openid);

            wx.setStorageSync('openid', res.data.openid);

          },

          fail: function (res) {

            console.log('获取openid失败' + res);

          },

          complete: function () {

            // console.log('反正执行了获取openid这个函数')

          }

        })


    2017-03-29
    赞同
    回复
  • 谢统华
    谢统华
    2017-03-29

    代码问题吧,我的可以哦

    2017-03-29
    赞同
    回复