小程序中的openid具有很多作用,不再展开赘述。考虑到云函数能直接获取用户的openid,推荐小程序访问量不大的用户使用云函数直接获取,

本篇文章只简单阐述一下,小程序配合后端来获取用户的openid。

一、 openid的获取流程:

1.首先需要使用wx.login()方法,获取用户的code。

2.在客户端,微信小程序将这个code发送给我们的服务器。

3.服务器收到我们的code之后,开始请求微信服务器获取openid的接口获取到openid。

4.服务器将获取到的openid返回给小程序客户端。

5.为什么不直接在微信小程序客户端请求微信服务器的接口呢?

其实这样也可以获取到用户的openid,但是调用微信获取openid的接口时,需要传入小程序的appid以及appSecret,出于安全性的考虑,不推荐把这两项放在微信小程序端。再者,审核也不会通过。因此,通过介入我们的服务器来实现安全性的提升。

二、微信小程序端通过wx.login()方法获取用户的code,并传递给服务器:

    wx.login({
      success: res => {
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
        console.log(res.code)
        wx.request({
          url: 'https://yourdomain/mp.php?code=' + res.code,
          success: result =>{
            console.log("获取到的openid为:", result.openid);
          }
        })
      }
    })

 三、服务器端接收并处理:


这样就大功告成了。

添加新评论