项目一切由个人进行编码设计。项目采用前后端分离的模式进行设计,前端选用Vue进行搭建分为:用户端和管理端,用户端使用Vue3.0管理端使用2.0,后端使用Spring Boot进行构建Security作为安全框架,Spring的mail依赖进行邮件收发,Redis对登录信息进行缓存,MySQL作为数据库。用户端能够让用户基于邮件来保障真实性的注册用户,登录后的用户能够对菜谱进行发表的评论点赞等实现。管理端可以对用户的发表的内容进行管理,基于RPC思想对用户权限进行管理,管理员对用户授予权限后用户可以通过用户端的入口直接单点跳转管理端的基于Ouath2.0的方式进行的跳转。图片存储方面使用Minio进行存储,后端封装工具类来对Minion进行操作。
技术难点:前端在对用户的敏感数据进行加密的时候采用RSA进行加密但是因为前端的jsrsasign等加密会对内容进行位填充导致后端对前端加密的数据进行解密的时候会无法进行解密,在查找后采用jsencrypt进行相应内容解密