这是我参与「第五届青训营 」伴学笔记创作活动的第 3 天
项目搭建
今天主要完成的项目的搭建,主要搭建的内容如下
路由
通过配置路由,让请求由对应的Controller进行处理,目前是把基础接口、互动接口、社交接口初步搭好了,就等后面进行开发
常量
我觉得定义常量是很有必要的,想请求参数什么的这些,可以用常量去定义,万一有一天改参数了,写的都是字符串的话,人都改没了。还有就是类似一些固定名字,打印Log的文字,都抽取了常量,代码看起来更加的优雅。
工具类
我觉得抽取工具类也是非常有必要的,目前我封装的工具类有Redis、RabbitMQ、JSON、时间、token,这样子我直接调用工具类的方法,就可以实现Redis字符串存取和集合操作、RabbitMQ发送消息、序列化与反序列化、时间的格式化、token的校验、token的取值
整合框架
目前整合进来的Gin、GORM,以及其他的例如token、oss等等的中间件,具体的还在探索,一边学习一边写,包括思考怎么对代码进行优化,这些都是提升自己的方法
整合OSS
目前整合的是阿里云的OSS对象存储,目的在于返回的视频链接,用户可以比较快的加载出来,而不是从服务器的小水管接水。
一些全局的配置
我对全局做了异常捕获,对于出错的情况,统一进行异常处理并返回错误消息
配置拦截器,类似Java SpringBoot框架中使用的PreHandler一样,进行拦截,在这里进行token的验证,这样子能进去controller方法的,说明一定是合法的token,此时controller就可以方向的拿取token使用,减少很多的冗余代码。
包装了一个异常处理的函数,可以传入一个message,然后进行统一错误返回,这样子减少了一些冗余代码。