从零开发一个宝宝账单(十):加入用户系统(上)

733 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第10天,点击查看活动详情

今天我们来实现小程序的用户系统。

在微信开发工具运行

HBuilder中点击运行 -> 运行到小程序模拟器 -> 微信开发者工具:

image.png

可以看到在底部终端多了个小程序-微信的Tab,并且它编译成功了,不过在试图打开微信开发者工具时失败了。很正常,咱们不需要HBuilder帮我们打开微信开发者工具,我们自己打开,因为有些东西需要设置。

image.png

我们手动打开微信开发者工具:

image.png

点击导入:

image.png

  • 项目名称:这个不重要,可改可不改
  • 目录:选择我们项目目录下的 unpackage\dist\dev\mp-weixin
  • AppID:去小程序工作台复制
  • 后端服务:选不使用云服务(我们已经用了阿里云了,这边不用再选后端服务)

image.png

点击确定:

image.png

成功跑起来了,并且数据请求也没有任何问题。

微信登录

新建一个名为login的云函数:

'use strict';
exports.main = async (event, context) => {
    const res = await uniCloud.httpclient.request(
        'https://api.weixin.qq.com/sns/jscode2session?appid=你自己的小程序appID&secret=你自己的小程序密钥&js_code=' + event
        .code + '&grant_type=authorization_code', {
                dataType: 'json'
        });
    return res;
};

image.png

点击上传部署云函数。

在首页调用一下这个方法:

wx.login({
    success: (res) => {
        uniCloud.callFunction({
            name: 'login',
            data: {
                code: res.code
            },
            success: (rsp) => {
                console.log(rsp);
            }
        })
    }
})

image.png

这样我们就拿到了用户的openid了。有了这个用户唯一标识,我们就可以建立属于自己的用户系统,实现各种各样的业务逻辑。好了,今天的分享就先到这,明天我们继续用户的授权登录以及账单关联用户等。敬请期待!

补充

上文说的通过HBuilder运行到小程序,打开微信开发工具失败的问题,HBuilder需添加小程序appID:

image.png

另外,微信开发工具的服务端口要开启:

image.png