简历视频项目准备

首行占位前端

1、项目需求分析,业务逻辑分析

项目需求:redis

  1.首页展现django

  2.用户登陆注册后端

  3.课程展现,课程详情展现编辑器

  4.视频播放post

  5.添加购物车,购物车调整视频

  6.建立订单jwt

  7.支付排序

 

业务逻辑:token

  1.进入首页

  2.点击查看课程列表

  3.点击进入课程详情

  4.点击播放视频

  5.未登陆则跳转到登陆页面,已登陆的就检查是否有权限,有权限则进入播放页面,无权限提醒购买

  6.加入购物车,建立订单,支付

 

首页模块

轮播图:接口提供image+link

导航:name+link

 

登陆注册

登陆:

  基于Django默认提供的认证系统,在项目中引入了JWT认证机制来代替Session机制,将用户的身份凭据存放在Token中,而后对接Django的认证系统,实现登陆

  Django REST framework JWT提供了登陆获取token的视图,能够直接使用默认的返回值仅有token,为了方便在客户端页面中显示当前登陆用户,修改了jwt视图的默认返回值,增长id跟username

  Django认证系统中提供的用户模型类及方法很方便,但没法知足本项目需求,如无保存手机号的字段,因此咱们扩展了它提供的用户模型类

 

多条件登陆:JWT扩展的登陆视图,在收到用户名与密码时,也是调用Django的认证系统中提供的authenticate()来检查用户名与密码是否正确。
咱们经过修改Django认证系统的认证后端(主要是authenticate方法)来支持登陆帐号既能够是用户名也能够是手机号

 

 极验验证:

  1.页面加载向后端请求验证流水号

  2.滑动成功完成,向后端发送滑动结果进行校验,校验成功给前端返回容许点击登陆按钮的消息

 

 短信注册:

  1.点击发送短信

  2.将短信保存在redis,并提醒前端发送成功

  3.点击注册,将输入的验证码与redis里面的验证码对比,成功则进行下一步

 

 课程

经过django-filter模块实现课程分类展现,使用drf的排序和分页功能实现课程的分页与排序

 

课程分类:

  默认不分类,显示全部

课程展现:

  展现的课程包含课程分类,课程信息,课程章节,课时信息,老师信息,价格策略这些内容

 详情页:

   CKEditor富文本编辑器,保利威,用户向后端请求token并播放视频

 

视频播放

  使用保利威视频服务平台,来实现收费视频的播放,借助保利威的开发文档


  具体流程是:前端向后端请求视频播放的token,后端验证无误后向前端发送能够获取视频的token,前端拿到token后向保利威获取视频。

 

购物

添加购物车:

  使用Redis,管道(事务)

 

状态更改:

  切换勾选状态和课程有效期

 

移除购物车:

 

订单

生成订单(订单记录与订单详情): 

  用户提交订单,后端进行校验信息,确保课程等信息无误有效,计算真实价格,开始生成订单,使用事务生成订单,成功删除购物车里面的数据,失败回滚操做

 

 支付

步骤:

  1.前端请求支付

  2.后端验证请求支付宝生成支付链接,发送给前端

  3.前端进行支付

  4.支付成功后,支付宝会发送两个请求,get到前端,post到后端,后端进行验证添加购买记录

相关文章
相关标签/搜索