借助小程序云开发获取小程序用户openid

讲解视频:https://edu.csdn.net/course/detail/9604

openid作为小程序用户的唯一标示,就相当于用户在微信里的身份证一样,我们做小程序开发时,获取用户的openid是很重要的。我们之前获取用户的openid,如下图官方文档说明,是通过该wx.login先获取临时凭证,然后再用临时凭证去换取用户的openid,这样做无可厚非,但是小程序出了云开发之后,再用这种方法获取用户openid就显得有些麻烦了,因为通过云开发获取用户openid特别方便,并且可靠。

在这里插入图片描述
下面就来带领大家借助云开发愉快的获取用户openid。
使用云开发之前需要简单了解下云开发,下面链接是官方学习文档。https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/getting-started.html

一,开启云开发

在这里插入图片描述
开启云开发只需要在开发者工具里点击上面红色框里的云开发按钮即可,创建成功后如下图
在这里插入图片描述

二,创建云函数

  • 1,创建云函数所需文件夹
    在这里插入图片描述

  • 2,右键点击functions,点击同步云函数列表
    在这里插入图片描述

  • 3,右键点击functions,点击新建node.js云函数
    在这里插入图片描述

  • 4,创建名为getOpenid的云函数
    在这里插入图片描述

  • 5,编写获取openid的代码
    在这里插入图片描述

// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
//获取用户的openid
exports.main = async(event, context) => {
 return event.userInfo; //返回用户信息
}
  • 6,右键点击getOpenid,上传并部署云函数。
    在这里插入图片描述

三,使用getOpenid云函数获取用户openid

  • 1,在app.js里初始化云开发
//app.js
App({
 onLaunch: function() {
  //云开发初始化
  wx.cloud.init({
   env: 'prod-8aa9a5',
   traceUser: true
  })
 }
})
  • 2,在首页使用云函数获取openid
//home.js
Page({
  data: {
    openid: '',
  },
  onLoad: function () {
   this.getOpenid();
  },
 // 获取用户openid
 getOpenid() {
  let that = this;
  wx.cloud.callFunction({
   name: 'getOpenid',
   complete: res => {
    console.log('云函数获取到的openid: ', res.result.openId)
    var openid = res.result.openId;
    that.setData({
     openid: openid
    })
   }
  })
 }
})

获取结果如下
在这里插入图片描述
到此我们就轻松的借助云开发云函数获取到了用户的openid了

如果你实现过程中,有遇到如下错误

调用失败 Error: errCode: -404011 cloud function execution error | errMsg: cloud.callFunction:fail requestID , cloud function service error code -504002, error message Function not found: [login]; at cloud.callFunction api;
在这里插入图片描述
查看这篇文章:《微信小程序开发常见问题及解决方案》https://blog.csdn.net/qiushi_1990/article/details/90733494

扫描二维码关注公众号,回复: 9004180 查看本文章

有小程序相关的问题,可以加我微信2501902696(备注小程序)

小程序云开发讲解视频:https://edu.csdn.net/course/detail/9604

10天零基础入门小程序系列视频教程

发布了165 篇原创文章 · 获赞 357 · 访问量 74万+

猜你喜欢

转载自blog.csdn.net/qiushi_1990/article/details/83015910