收藏
回答

微信开放平台开发小程序如何获取进入小程序的用户openid?

一直都是做单独的小程序开发,这次接触来开放平台,也注册好了,也创建了应用,授权了自己的测试的小程序。
然后通过开发者工具创建了一个小程序,也能将代码上传到开放平台的草稿箱。

在获取openid碰到问题,一直不理解开放平台的概念

    wx.login({
      success: res => {      
        wx.showLoading({
          title: '加载中',
        })
        wx.request({
          url: config.domain+'/api/login', 
          data: {
            code: res.code,
          },
          method:'post',
          success(res) {
            wx.hideLoading()
            self.globalData.user = res.data
            
          }
        })        // console.log(config)
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
      }
    })

小程序这里只会往我的服务器发送一个code,服务器如何知道这是哪个小程序发送过来的?
普通的开发模式都是针对一个小程序开发,appid都是固定的。

最后一次编辑于  02-20  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

1 个回答

  • 铭锋科技
    铭锋科技
    02-20

    使用限制

    • 网络请求的 referer header 不可设置。其格式固定为 https://servicewechat.com/{appid}/{version}/page-frame.html,其中 {appid} 为小程序的 appid,{version} 为小程序的版本号,版本号为 0 表示为开发版、体验版以及审核版本,版本号为 devtools 表示为开发者工具,其余为正式版本;


    服务器根据 referer 获取 appid


    如果要获得openid,config.domain+'/api/login'这个接口负责将微信传过来的code进行校验后获取openid


    code2Session

    本接口应在后端服务器调用,详细说明参见后端API

    登录凭证校验。通过 wx.login() 接口获得临时登录凭证 code 后传到开发者服务器调用此接口完成登录流程。更多使用方法详见 小程序登录

    https://developers.weixin.qq.com/miniprogram/dev/api/code2Session.html



    02-20
    赞同
    回复 1
    • 郑能亮
      郑能亮
      02-20

      你好,后端语言从请求的referer中把appid获取出来,那后面的应该就能走通了,我一直很疑惑这样子的方式到底对不对,感觉是一条歪路

      02-20
      回复