1-1 请说一下你项目中是如何进行项目管理和发布的
gogs进行代码托管,Jenkins进行项目的自动运维发布。
先从gogs拉取代码,然后写完一个功能后,先commit,在merge,最后push到gogs.
Jenkins会拉取gogs的代码,执行clean pakage操作。
最后手动执行,Jenkins会制作好镜像,制作好容器部署在Linux中。
1-2 现在浏览器点击按钮出现了一个报错,如何定位发生问题的代码
首先配置本地hosts。请求会从浏览器发出,经过nginx的转发到网关微服务,然后网关微服务去nacos注册中心找到对应的业务微服务。在对应的业务微服务中打上断点,即可找到业务逻辑BUG。
1-3 你得项目中进行用户的登录和检验的详细流程是怎样的
1.用户进入网关开始登录,网关过滤器进行判断,如果是登录,则路由到后台微服务进行登录
2.用户登录成功,后台管理微服务签发JWT TOKEN信息返回给用户
3.用户再次进入网关开始访问,网关过滤器接收用户携带的TOKEN
4.网关过滤器解析TOKEN,判断是否有权限,如果有,则放行,如果没有则返回未认证错误
1-4 说一下文章发布的流程
1.该功能为新增、修改、保存草稿的三个功能的共有方法,根据参数中是否有id来确认是新增还是修改,根据参数中的status来确认是否是草稿
2.保存和修改文章时,需要同时保存文章中的图片id到中间表,如果是修改的话,还需要根据文章id提前删除中间表的数据(是草稿的话,不做中间表保存)
3.封面图片如果选择自动,需要从内容中提取,规则为:内容中没有图片,则为无图;图片数量0~2则为单图(截第1张),图片数量>=3则为多图(截前3张)