点击空白处退出提示
湖胜在线教育网站
我要开发同款作品详情
● 微信登录模块:
当用户选择微信进行登录时,前端根据对应商户的信息生成二维码,当用户进行扫码后,点击确认授权,微信直接返回 code 值给后端,后端根据 code值,appid,secret 请求微信接口,微信端返回 token 值给后端,后端根据 token 请求微信端,微信端根据 token 返回对应的用户信息给后端,后端返回数据给前端,并保存用户信息至数据库
● 支付模块:项目采用微信支付的方式,当用户在首页看中想要的课程视频时,点击立即购买按钮,前端会发送商品的一些基本信息到后端,后端根据这些信息请求微信接口,微信端生成微信订单并返回支付链接给后端,后端再把这条支付链接发送给前端,前端根据这条支付链接生成支付二维码,同时前端请求后端不断请求微信接口查看用户是否支付金额,当用户扫描二维码后,
1,支付成功后,微信端会返回支付成功的数据给后端,后端返回数据给前端,前端根据支付结果执行查询后端已购课程等,
2,支付失败后,微信端返回未支付状态给后端,后端返回数据给前端,前端根据状态调用后端执行关闭微信订单操作
● 广告模块:当用户进入首页时,前端页面会直接请求后端,后端请求数据库,从数据库中拿出广告数据给前端,并存储数据进 redis ,下次再有请求时,如果 redis 中有的话,直接从 redis 中拿取数据,
使用同步线程锁实现线程同步
● 课程模块:项目的课程列表是存储在 es 中的,当用户进入首页时,后台直接根据 es 官方 api从 es 中拿取数据,并实现文档数据的分页,命中率排序,根据价格排序,关键词高亮显示,模糊匹配和多条件匹配文档数据
等模块
2,项目所用技术:
● 后端使用 swagger 生成 api 文档,springboot+ssm+mybatisPlus 完成三层架构的实现,阿里云 oss 对象存储,使用 jdk 8新特性封装树形结构,实现 redis 作数据缓存,减少数据库的压力,
使用 rabbitMq 实现异步消息通知,openFeign 实现远程调用,负载均衡和熔断,nacos 做注册和配置中心,网关+jwt 实现鉴权,路由配置,解决跨域,es 实现数据搜索,git 实现版本控制,调用微信接口实现微信登录,微信支付,微信关闭订单,
● 前端使用 vue+elementui 实现页面的绘制,vueRouter 进行路由导航,vuex 进行组件间数据的传递,
axios 实现前后端数据的交互,使用 vue-wxlogin 插件实现微信登录二维码的生成,使用 QRCode 生成支付二维码,
3,我的分工:合作开发微信登录,课程模块,广告模块,指导同事一些技术上的问题
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论