精选

【星球项目】API 开放平台项目拓展

#API开放平台# 哈喽,大家好,我是YukeSeko。在做完API开放平台后,觉得这个是个非常好的项目,于是就进行了一点小小的改造和扩展,整个项目的扩展前后端都是自己开发的,前前后后大概花了一个月左右的时间,改bug花了挺多时间的,React也是第一次用,就跟着文档自学了一下。

项目上线地址为http://122.9.148.119/

(因为我买的服务器的内存是4G,要部署几个微服项目以及Nacos、Rabbit Mq ,可能会出现某些服务宕机挂掉的可能,太难了~555)

Github地址https://github.com/YukeSeko/YukeSeko-Interface

后端主要扩展技术和功能:

1、新增用户登录后返回token、以及token拦截器

2、重构用户表:将ak、sk单独放在表Auth中,且用户表中新增手机号mobile字段

3、新增用户通过手机号、发送手机验证码方式进行登录,使用令牌桶算法对发送短信接口进行限制

4、新增用户注册、忘记密码功能和页面,重构用户注册功能(需要使用手机号进行验证)。

5、新增在网关层中使用Sentinel来实现限流、降级等操作。

6、修改SDK请求基本路径,interface服务使用基本请求路径中携带的headers,通过反射技术实现只通过一个main接口动态调用API接口。

7、新增框架Spring Security 框架的使用(具有两种鉴权模式,可以选择使用Spring Security,也可以使用拦截器来实现)

8、新增Rabbit Mq 的使用,用于发送短信验证码和实现订单过期释放库存等功能,主要涉及到消息可靠性保证等功能实现(主要用于订单流程)

9、新增Feign来实现远程调用

10、新增接口购买功能(通过支付宝沙箱功能来实现付款功能)

11、新增第三方登录功能(Gitee、GitHub),微信公众号登录需要备案等其他原因,不再实现~

12、新增分布式锁的使用,解决在分布式环境中多个实例的相同定时任务在同一时间点重复执行的问题。

写作最后:

1、其中,发送短信功能每个手机号存在每日发送次数上限。

2、后续打算再在这个项目上添加鱼搜索的功能(服务器再装一个ES可能就炸了~哈哈哈...)

3、项目本地环境测试的时候暂时没有出现bug,如果线上环境出现bug的话,欢迎大家给我留言或者私信。

4、项目中还有许多不足之出,欢迎大佬们指点,有幸能被鱼皮哥看到的话,也期待鱼皮哥提提改进优化的建议或者想法。

0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
YukeSeko
作者分享
我已通关码神挑战,一起来玩呀~https://1024.codefather.cn/
1
美团社招一面-两年Java-面经
5
#经验# #求职# #资源# #学习总结# 哈喽大家好,我是YukeSeko,距离我上次分享已经是3个月之前了,三个月本来计划再做个项目的,奈何出差了三个月,基本上每天都加班到八九点,实在没时间再做新的项目,中途老项目又挂了好多次,都是上班时间偷偷弄的。 三个月出差总结: 三个月里让我体会到了什么是真正的全干工程师,从数据库设计到代码生成再到后端开发,从Vue2到Vue3,从项目打包到流水线发布再到项目上线,一个项目的整个流程基本上都跑了一遍(可能是因为太缺人、项目又多的缘故哈哈哈),最后出差快结束的时候,用了接近一周的时间写了一个比较复杂的算法。在这三个月里,我明白了一个道理,不是你用到的技术有多么高大上才牛,而是你能够通过你的思维和逻辑将某一个功能通过一定的技术方法实现出来才厉害。让我收获最多的就是,这里的代码为什么要这样写,这样写的好处是什么,这里写的逻辑又是什么,这对思维有一定的锻炼。 后续计划: 三个月的时间,鱼皮大大又带领大家做了好几个项目了,今天还要再开一个新的项目,刚刚结束出差的我必须充分利用好时间,继续学习新的项目,不断提升自己。这三个月里,我的各个方向的开发能力都有一定的提高,但是还是不够精,后续还需要在后端上继续专研,前端能写就行。 今天先分享一波这一两周学的MySql进阶相关的知识,全文1.3w个字左右,视频是看的黑马的MySql进阶篇和运维篇,笔记是跟着自己的理解做的,希望对球友们有一定的帮助。同时,后续也会不断分享自己的总结、感悟、项目等。
31
#自我介绍# 大家好,我是YukeSeko,我是22届本科毕业,方向是Java,目前在一家国企工作半年,做的基本上都是CRUD。我的知识体系还不够完善,技术还有好多都不会,加入星球希望跟着大家一起进步、一起学习技术,争取早日升职加薪[嘿哈]。
13
《API开放平台》登录页面需要点两次登录才能进入的问题
16
下载 APP