微信小程序云函数服务器,微信小程序开通云开发并利用云函数获取Openid

需求:

没有服务器开发,如何实现微信小程序端的登录功能?

旧项目转云开发并使用云函数?

以上是我目前项目的背景。

小程序端的登录流程,官网介绍的很清楚了

主要就是通过 wx.login 去获取code,然后拿code去服务器端获取openid

ps: 用户公开的微信信息,可以通过Button 的open-type = getUserInfo去获取,

看完以上几个文档,至此登录流程已经很清晰了,下面就是具体操作了。

新项目直接使用云开发模板即可。

老项目开通云开发也很简单,点击开发者工具中菜单上的【云开发】一步步操作即可。

ee14e5211f8f66720a9d069291ab9065.png

由于我们没有服务器,要获取小程序中用户的唯一标识openid,需要新建一个云函数,将Openid等参数返回。

1ffe3c87db3eaec2feda57f5e5e90090.png

没有使用云开发模板的项目, 可参考 openid。

f7f028f664e8544cc8c226c3eaf0a50e.png

看不明白官方文档的

结合我的做法再看一遍文档吧:

在project.config.json添加"cloudfunctionRoot": "./functions/"

3eed070efb5215d8cac7b3f0cdd0fe27.png

新建云函数

4e6748746d4b32667d5e305cfa75201c.png

部署云函数,之后点击【云开发】之后可查看到刚刚新建的函数

e51ba9689649c039e0fd7524bfd540c5.png

e1c01005beafa3694e15244a2a0fef3c.png

然后编写获取openid的云函数

9cacaff86c62e0e840539ec6793bcdc9.png

// 云函数入口文件

const cloud = require('wx-server-sdk')

cloud.init()

// 云函数入口函数

exports.main = async (event, context) => {

const wxContext = cloud.getWXContext()

return {

event,

openid: wxContext.OPENID,

appid: wxContext.APPID,

unionid: wxContext.UNIONID,

}

}

最后调用一下云函数,获取openid

4944d59407fb17a1b3f3a3d9e5db9f56.png

// 获取用户openid

getOpenid() {

let that = this;

wx.cloud.callFunction({

name: 'getOpenid',

complete: res => {

console.log('openid: ', res.result.openid)

console.log('appid: ', res.result.appid)

// var openid = res.result.openId;

// that.setData({

// openid: openid

// })

}

})

},

本文同步分享在 博客“_龙衣”(CSDN)。

如有侵权,请联系 support@oschina.cn 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值