微信小程序本地开发:获取用户openid

一、配置本地开发环境

由于在小程序中使用 wx.request 发送请求时,会验证请求地址是否是已经被配置为服务器域名。在本地开发中,会去请求本地的接口。
为了成功发起请求,在本地开发时,需要在开发者工具中勾选:
详情 --> 不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书

二、获取小程序的AppID、AppSecret

登录微信公众平台,进入:
设置 -> 开发者设置


微信小程序本地开发:获取用户openid_第1张图片
img

AppSecret 不会被明文显示在页面上,所以生成 AppSecret 后,请妥善保存。

三、获取 js_code

出于安全考虑,api.weixin.qq.com 不能被配置为服务器域名,相关API也不能在小程序内调用,所以我们需要在小程序的 app.js 中 wx.login 函数中,获取 js_code,然后将 js_code 发送给后台

//app.js
App({
  onLaunch: function () {
    // 登录
    wx.login({
      success: res => {
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
        wx.request({
          //获取openid接口  
          url: 'http://localhost/openid',
          data: {
            js_code: res.code,
          },
          method: 'POST',
          success: function (res) {
            console.log(res)
          }
        })  
      }
    })
  }
})

四、后台获取 openid

请求地址:https://api.weixin.qq.com/sns/jscode2session
请求参数:

{
    "appid" : "",
    "secret" : "",
    "js_code" : "",
    "grant_type" : "authorization_code"
}

返回参数:

{
    "session_key" : "",
    "openid" : ""
}

你可能感兴趣的:(微信小程序本地开发:获取用户openid)