html页面判断是否登录,egg(103)--egg之定义公共的中间件判断用户是否登录以及去结算页面制作...
判断用户是否登录
中间件
app/middleware/userauth.js
module.exports = (options, app) => {
return async function init(ctx, next) {
//判断前台用户是否登录 如果登录可以进入 ( 去结算 用户中心) 如果没有登录直接跳转到登录
var userinfo = ctx.service.cookies.get('userinfo');
if (userinfo && userinfo._id && userinfo.phone) {
//判断数据库里面有没有当前用户
var userResutl = await ctx.model.User.find({ "_id": userinfo._id, "phone": userinfo.phone });
if (userResutl && userResutl.length > 0) {
//注意
await next();
} else {
ctx.redirect('/login');
}
} else {
ctx.redirect('/login');
}
};
};
router
var userauthMiddleware = app.middleware.userauth({}, app);
router.get('/buy/checkout', initMiddleware, userauthMiddleware, controller.default.buy.checkout);
}
效果
点击结算,如果没有登录,就跳转到登录页面
购物车到结算页面
controller
app/controller/default/buy.js
async checkout() {
var orderList = [];
var allPrice = 0;
var cartList = this.service.cookies.get('cartList');
if (cartList && cartList.length > 0) {
for (var i = 0; i < cartList.length; i++) {
if (cartList[i].checked) {
orderList.push(cartList[i]);
allPrice += cartList[i].price * cartList[i].num;
}
}
await this.ctx.render('/default/checkout.html', {
orderList: orderList,
allPrice: allPrice
})
} else {
this.ctx.redirect('/cart')
}
}
view
app/view/default/checkout.html
元 x
元
应付总额:
元
效果
html页面判断是否登录,egg(103)--egg之定义公共的中间件判断用户是否登录以及去结算页面制作...相关推荐
- Python笔记_81_结算页面_订单模型_优惠券
文章目录 结算页面 订单模型 把当前子应用注册到xadmin中 后端实现生成订单的api接口 使用django提供的mysql事务操作保证下单过程中的数据一致性 前端请求生成订单 前端请求后端的订单信 ...
- php sessionid 重复,php_ session_id 限制同一用户同时登录
出于信息安全的考虑,希望给每个能进入系统的人员一个账户,而不是所有人共用一个账户,并且一个账户同时只能一人登陆.刚开始的做法是登陆加锁,当用户登陆之后,对此用户进行标记,若此用户未下线状态下进行第二次 ...
- 登录失败未授权用户在此计算机上win10,win10系统未授予用户请求登录类型该如何解决?...
Win10系统使用电脑时,常常会遇到win10系统未授予用户请求登录的问题.出现win10系统未授予用户请求登录的问题该怎么解决呢?就此问题,下面小编浅析win10未授予用户请求登录类型如何设置. w ...
- egg(113)--egg之登录成功跳转到登录之前的页面
流程 点击登录按钮,前端把当前的url,传给后台 后台把url传给,登录页面 登录页面,点击登录,跳转到登录前的页面 效果 第一步 第二步 第三步 router router.get('/login' ...
- egg(115)--egg之订单页面筛选,搜索
model 修改order_item,增加uid appmodelorder_item.js module.exports = app => {const mongoose = app.mong ...
- python验证用户登录的判断_python怎么判断用户是否登录?
python中判断用户是否登录的方法:def cmdbindex(req): if not request.user.is_authenticated(): return render(request ...
- 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计
转载需经本人同意且标注本文原始地址:https://zhaomenghuan.github.io/blog/nodejs-eggjs-usersytem.html 前言 近来公司需要构建一套 EMM( ...
- vue路由守卫判断用户是否登录,如果没登陆就跳转到登录
router.beforeEach((to, from, next) => {//路由跳转中const nextRoute = ['About'];//将所有需要登陆才显示的页面的路由都放进一个 ...
- uniapp 判断是否登录,是跳转至首页,否跳转至登录页
1.问题 在使用uni-app开发app 打包完成后 用户没登录首次进入跳转登录页 登录跳转至首页! 平常解决方法是onLaunch生命周期里面判断用户是否登录 但是有一个不好的体验就是每次进入程序先 ...
最新文章
- 将Excel文件数据库导入SQL Server
- MM的SQLDMO- -哈哈(数据备份与恢复篇)
- [js对象]JS入门之Global对象
- mysql 创建库设置中文
- Apache服务器二级域名的完美实现
- 消费升级背景下零食行业发展报告_零食行业进入4.0时代,蔬菜、水果、肉制品站上万亿风口!...
- 如何使用Gradle外部脚本进行项目构建
- 哪个学校既教计算机教英语翻译,教学计算机专业的英语翻译.doc
- MariaDB多源复制环境搭建(多主一丛)
- Codeforces Round #243 (Div. 2) A~C
- linux 用shell比较两个整数的大小
- Confluence 6 配置备份
- eclipse php 404错误,关于php:Eclipse Subversion插件Subclipse显示错误
- 十几减9的口算题_一年级数学《口算十几减9》教案
- 高通Q888内核源码分析--概述篇
- 网络游戏源代码分析_为您的游戏选择正确的网络代码
- 利用html做一个3D 图片动态效果
- 微型计算机温度控制系统,单片机实现PC机温度控制系统方案
- Fortran 90:Fortran 学习笔记(一)
- 关于mindspore.ops.operation.Conv2d算子使用