uni-app实现公众号登陆实现
公众号实现登陆流程思路:
1. 创建一个页面用于登陆,页面上需要有输入账号和密码的表单,以及登陆按钮。
2. 在登陆按钮的点击事件中,调用后端接口进行账号密码校验。如果校验通过,则将后端返回的用户信息保存在本地存储中。
3. 在需要使用用户信息的页面中,可以通过 uni.getStorageSync 方法获取本地存储中的用户信息,判断用户是否已经登陆。如果本地存储中没有用户信息,则跳转到登陆页面。
下面是具体的代码实现:
1. 登陆页面的模板代码
<template>
<view class="login">
<view class="form-group">
<view class="label">账号:</view>
<input type="text" v-model="username" placeholder="请输入账号" />
</view>
<view class="form-group">
<<view class="label">密码:</view>
<input type="password" v-model="password" placeholder="请输入密码" />
</view>
<button type="primary" class="login-btn" @click="handleLogin">登陆</button>
</view>
</template>
```
2. 在登陆按钮的点击事件中,调用后端接口进行账号密码校验。
```
methods: {
async handleLogin() {
try {
const res = await uni.request({
url: 'http://yourbackend.com/login',
method: 'POST',
data: {
username: this.username,
password: this.password
}
});
if (res.code === 0) {
uni.setStorageSync('userInfo', res.data); //将用户信息保存在本地
uni.showToast({
title: '登陆成功!',
icon: 'success'
});
uni.navigateTo({
url: '/pages/home/index'
});
} else {
uni.showToast({
title: '登陆失败,请检查账号密码是否正确!',
icon: 'none',
duration: 2000
});
}
} catch (err) {
console.log('登陆失败', err);
uni.showToast({
title: '登陆失败,请稍后再试!',
icon: 'none',
duration: 2000
});
}
}
},
```
3. 在需要使用用户信息的页面中,可以通过 uni.getStorageSync 方法获取本地存储中的用户信息,判断用户是否已经登陆。
```
onShow() {
const userInfo = uni.getStorageSync('userInfo');
if (!userInfo) {
uni.navigateTo({
url: '/pages/login/index'
});
} else {
this.userInfo = userInfo;
}
}
```
以上代码示例中,我们使用 uni.request 方法发送登陆请求,通过 await 等待后端返回数据,根据返回码来判断登陆是否成功。如果成功,则将用户信息保存在本地存储中,并跳转到首页(/pages/home/index)。如果失败,则提示错误信息。
在首页中,我们使用 onShow 方法来获取本地存储中的用户信息,如果不存在,则跳转到登陆页面(/pages/login/index)。
注意,这里存储的用户信息是明文存储的,如果存储的信息中包含敏感信息,建议对数据进行加密保存
uni-app实现公众号登陆实现的更多相关文章
- 微信中的APP、公众号、小程序的openid及unionid介绍
微信中的APP.公众号.小程序的openid及unionid介绍 1.unionid 如果开发者拥有多个移动应用.网站应用.和公众帐号(包括小程序),可通过 UnionID 来区分用户的唯一性,因为只 ...
- 新增线下、APP、公众号多处入口,小程序会再火起来么?
现在,大多数互联网创业者最缺的是流量,第二缺的是钱.之前开发者们追捧小程序的重要原因就是在于认为这可能是下一个微信公众号体量的流量入口,因为大家都想从微信的8亿多用户中收获自己的一部分用户. 近期部分 ...
- 第三方微信支付,WAP、H5、APP、公众号支付的区别
你说一个微信支付被腾讯搞了N个版本出来,是技术问题还收费原因不得而知.公众号支付,H5(wap)支付,APP支付.看得小编一头雾水. 带点N个疑问? 1.公众号支付是在公众号里支付,支众号里引入的三方 ...
- 使用FreeHttp强制登出微信公众号登陆状态(实现~原理)
概述 我们使用的部分网站设计成一旦登录即不允许用户手动退出,现实场景中是没有问题的 但如果是在测试或调试过程中就会有强制登出的需求 如果当前使用的是PC浏览器,您或许可以通过调试模式清除保持登录信息的 ...
- 微信退款(APP和公众号一样)
/** * 将xml转为array * @param string $xml xml字符串 * @return array 转换得到的数组 */ public function xml2array($ ...
- 集成微信支付的代码。兼容小程序,扫码,app,公众号。h5 支付 ,以及 服务商提现
/** * 因为微信总是很多个商户号很多和appid.很多个密钥文件,所以全部改成手动传值的方式,就可以支持多商户调用 * * @param appId 商户的appid * @param mch ...
- 微信公众号与APP微信第三方登录账号打通
一个项目同时开发了APP和微信服务号,需要做到APP和微信服务号的账号互通同步,也就是说一个账号在2个地方都可以用,当然这个前提是保证你公司自己的服务器的数据库用的是同一套. 为保证用户数据的唯一性, ...
- 微信JSAPI 公众号支付 H5支付以及APP支付 WEBAPI接口开发测试
统一下单入口 调用该方法入口: public void WxPayAPI() { //string PayPrice ="99.9"; ////订单号 //string Payor ...
- python爬取微信公众号
爬取策略 1.需要安装python selenium模块包,通过selenium中的webdriver驱动浏览器获取Cookie的方法.来达到登录的效果 pip3 install selenium c ...
- [Python] 微信公众号开发 Python3
搭建服务 开通一个阿里云ecs,安装python3及需要的包(参考下方官方文档) 将py文件保存在ecs上,运行 在本地访问阿里云的IP地址 能完成这步说明网络没问题 server.py 1 # -* ...
随机推荐
- TienChin-课程管理-课程更新接口
更改包名 将之前的 entity 更改为 domain: 将之前的 validator 包当中的校验分组接口移动到 common 模块当中,因为其它模块也需要使用就放到公共当中进行存储. 更改完毕之后 ...
- SQL 训练题目
title: SQL 训练题目 date: 2023-7-15 01:45:50 tags: - SQL 训练 一. 查询 "01" 课程比 "02" 课程成绩 ...
- TienChin 项目改造完善&项目结构分析
项目改造完善 更改 Banner Banner 生成网站:https://bootschool.net/ascii 更改启动类中的 Banner !> 如果不生效,需要重新编译一下项目工程(出现 ...
- 开启想象翅膀:轻松实现文本生成模型的创作应用,支持LLaMA、ChatGLM、UDA、GPT2等模型,开箱即用
开启想象翅膀:轻松实现文本生成模型的创作应用,支持LLaMA.ChatGLM.UDA.GPT2等模型,开箱即用 1.介绍 TextGen实现了多种文本生成模型,包括:LLaMA.ChatGLM.UDA ...
- 基于知识图谱的电影知识问答系统:训练TF-IDF 向量算法和朴素贝叶斯分类器、在 Neo4j 中查询
基于知识图谱的电影知识问答系统:训练TF-IDF 向量算法和朴素贝叶斯分类器.在 Neo4j 中查询 1.项目介绍 训练 TF-IDF 向量算法和朴素贝叶斯分类器,预测用户文本所属的问题类别 使用分词 ...
- 深度学习应用篇-元学习[14]:基于优化的元学习-MAML模型、LEO模型、Reptile模型
深度学习应用篇-元学习[14]:基于优化的元学习-MAML模型.LEO模型.Reptile模型 1.Model-Agnostic Meta-Learning Model-Agnostic Meta-L ...
- STM32CubeMX教程29 USB_HOST - 使用FatFs文件系统读写U盘
1.准备材料 正点原子stm32f407探索者开发板V2.4 STM32CubeMX软件(Version 6.10.0) keil µVision5 IDE(MDK-Arm) ST-LINK/V2驱动 ...
- Docker从认识到实践再到底层原理(四-1)|Docker镜像仓库|超详细详解
前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助. 高质量博客汇总 然后就是博主最近最花时间的一 ...
- P4402 [Cerc2007] robotic sort 机械排序题解
题目链接:[Cerc2007] robotic sort 机械排序 前置知识点:文艺平衡树 具体的我们会将序号下标作为平衡树的键值,这样一来每个节点其实就是数组中的每个位置,又因为这个位置是具有有序性 ...
- .NET Core开发实战(第15课:选项框架:服务组件集成配置的最佳实践)--学习笔记
15 | 选项框架:服务组件集成配置的最佳实践 这一节讲解如何使用选项框架来处理服务和配置的关系 选项框架的特性: 1.支持单例模式读取配置 2.支持快照 3.支持配置变更通知 4.支持运行时动态修改 ...