考研资料共享系统的设计说明
- 设计意义及目的
- 模块划分
- 技术难点
- 写项目中遇到的问题
- 该项目的后端模块介绍
- 该项目的前端模块介绍
- 运行演示
- Gitee链接
设计意义及目的
为了方便找资料,了解考研形式;另一方面是锻炼编写系统的能力
模块划分
主要划分为:文章、问答、资料、私信、举报、登陆注册、个人中心、开通会员、搜索等模块(用户端功能)
管理员端有相应模块的审核模块,及拦截模块与类型管理模块
技术难点
主要涉及到了以下技术点:
1、接口安全及限流
2、QQ邮箱发送信息
3、支付宝沙箱支付
4、敏感词过滤
5、私信模块(由于是采用数据库写的,实际难度并不大,更多的点是在界面编写上)
以下着重介绍一下,支付宝沙箱支付中的细节点问题,分为以下几个步骤
1、基本的环境搭建(项目的搭建、依赖的安装、支付宝沙箱支付appId的申请)(参考这篇文章)
2、要介绍的是 alipay.notifyUrl、alipay.returnUrl 的使用
(由于需要验证身份,发现在 alipay.returnUrl 进行重定向时会导致浏览器 sessionStorage 内容的丢失,于是只能采用localStorage进行身份信息的储存;另外需要注意的是 127.0.0.1和localhost 并不共享localStorage,这个细节是需要注意的)
3、另外再介绍一下,这个QQ邮箱的使用细节 ,主要的一点就是防火墙会被拦住,然后需要打开(参考的是这篇文章)
最后是单元测试的问题,许多地方实际书写的并不好,而且单元测试也没来得及去开展;主要还是拦截器限制以及request的填充和加密等问题;然后在实际使用时需要打开Test的插件,才会有左边那个运行按钮的出现
写项目中遇到的问题
写项目中遇到的问题
这里记录的是在书写项目中发现的问题以及一些解决方式
该项目的后端模块介绍
该项目的前端模块介绍
分了两套系统:用户端和管理员端
用户端:
管理员端
运行演示
管理员端
用户端
Gitee链接
https://gitee.com/anxwefndu/data-sharing-system—gitee