小程序微信登陆及账号绑定功能开发笔记
小程序微信登陆及账号绑定功能开发笔记
目标功能:
1. 进入小程序后请求获取用户信息用于登录2. 将获取到的用户信息与数据库中的信息进行比对3. 数据合格(能在数据库中找到用户的信息)则进入主页4. 数据不合格(找不到匹配的用户信息)则提示错误信息开发环境:
* 小程序框架:微信小程序2.x* 后端语言:Node.js + Express.js* 前端语言:JavaScript + HTML + CSS* 数据库:MongoDB步骤一:配置微信登陆
1. 在微信小程序后台创建一个应用,并获取 AppID 和 AppSecret。
2. 在小程序的 `app.json` 文件中添加以下配置:
```json{
"pages": [
"index",
"login"
],
"window": {
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "fff",
"navigationBarTitleText": "",
"onLoad": function(options) {
wx.login({
success: function(res) {
if (res.code) {
// 发送请求获取用户信息 wx.getUserInfo({
success: function(userInfo) {
// 将获取到的用户信息与数据库中的信息进行比对 compareUserInfo(userInfo);
},
fail: function(err) {
console.error(err);
}
});
} else {
console.error("wx.login() failed!");
}
},
fail: function(err) {
console.error(err);
}
});
}
}
}
```
3. 在 `login` 页面中添加以下代码:
```javascriptPage({
data: {},
onLoad: function(options) {
// 将获取到的用户信息与数据库中的信息进行比对 compareUserInfo(wx.getStorageSync("userInfo"));
},
onShow: function() {}
});
```
步骤二:比较用户信息
1. 在 `compareUserInfo` 函数中,将获取到的用户信息与数据库中的信息进行比对。
2. 如果数据合格,则进入主页。
3. 如果数据不合格,则提示错误信息。
```javascriptfunction compareUserInfo(userInfo) {
// 将获取到的用户信息与数据库中的信息进行比对 db.collection("users").findOne({
_id: userInfo._id }, function(err, result) {
if (err) {
console.error(err);
} else if (result) {
// 数据合格,则进入主页 wx.redirectTo({
url: "/pages/index/index"
});
} else {
// 数据不合格,则提示错误信息 wx.showToast({
title: "登录失败",
icon: "none",
duration:2000 });
}
});
}
```
步骤三:绑定账号
1. 在 `login` 页面中添加以下代码:
```javascriptPage({
data: {},
onLoad: function(options) {
// 将获取到的用户信息与数据库中的信息进行比对 compareUserInfo(wx.getStorageSync("userInfo"));
},
onShow: function() {}
});
```
2. 在 `compareUserInfo` 函数中,将获取到的用户信息与数据库中的信息进行比对。
3. 如果数据合格,则进入主页。
4. 如果数据不合格,则提示错误信息。
```javascriptfunction compareUserInfo(userInfo) {
// 将获取到的用户信息与数据库中的信息进行比对 db.collection("users").findOne({
_id: userInfo._id }, function(err, result) {
if (err) {
console.error(err);
} else if (result) {
// 数据合格,则进入主页 wx.redirectTo({
url: "/pages/index/index"
});
} else {
// 数据不合格,则提示错误信息 wx.showToast({
title: "登录失败",
icon: "none",
duration:2000 });
}
});
}
```
步骤四:测试
1. 在微信小程序中测试登陆功能。
2. 测试绑定账号功能。
以上就是小程序微信登陆及账号绑定功能开发笔记的详细描述。