获取小程序用户信息

云开发的云函数的独特优势在于与微信登录鉴权的无缝整合。当小程序端调用云函数时,云函数的传入参数中会被注入小程序端用户的 openid,开发者无需校验 openid 的正确性,因为微信已经完成了这部分鉴权,开发者可以直接使用该 openid。与 openid 一起同时注入云函数的还有小程序的 appid。

从小程序端调用云函数时,云函数的第一个参数 event 会被注入一个 userInfo 对象,其中含有 openId 字段和 appId 字段,可以写这么一个云函数进行测试:

  1. // index.js
  2. exports.main = (event, context) => {
  3. return event.userInfo
  4. }

假设云函数命名为 test,上传并部署该云函数后,可在小程序中测试调用:

  1. wx.cloud.callFunction({
  2. name: 'test',
  3. complete: res => {
  4. console.log('callFunction test result: ', res)
  5. }
  6. })

会在调试器看到输出的 res 为如下结构的对象:

  1. {
  2. "appId": "xxx",
  3. "openId": "yyy"
  4. }

下一章节,我们一起看看如果在云函数中需要进行一段异步操作再返回的时候该如何处理。

原文: https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/functions/userinfo.html