1-1请说一下你项目中是如何进行项目管理和发布的
我们在项目中使用Gogs进行项目的管理,使用Jenkins来进行发布
首先,我们会在Gogs上创建项目的仓库,把我们的代码拉到本地,跟Gogs同步,我们在本地创建分支进行代码的开发;完成一个模块或功能要提交代码,就先要合并到开发分支上,再向Gogs进行代码的提交.
然后,代码提交后,Gogs就会通知Jenkins;Jenkins收到通知后就会执行预定好的任务,拉取Gogs中对应分支的代码并且重新进行清理,打包,编译,然后根据脚本生成对应的镜像,生成容器,重新执行,然后发布.
1-2 现在浏览器点击按钮出现了一个报错,如何定位发生问题的代码
我们解决报错,应该先理清楚业务流程,然后通过打断点的方式定位
首先,我们在浏览器通过F12界面,查看报错代码以及请求路径
其次,我们根据请求路径在Nginx中查看转发到哪个后端服务
接下来,在Gateway服务中查看application配置文件,找到对应的微服务名称
最后,在对应的微服务并追踪到相关的代码,打上断点,寻找报错代码
1-3你得项目中进行用户的登录和检验的详细流程是怎样的
登录的本质就是对用户表进行查询操作
首先要接收前端发送的账号和密码
然后根据账号在数据库员工表进行查询,如果没有查到,说明此账号不存在,可以直接给前端返回一个提示,如果查询到了说明这个账号存在
接下来就要进行前端传入密码和数据库查询到的密码比对,由于数据库的密码是加密保存的,所以在比对之前,还需要对前端传入的秘密进行加密;如果比对失败,说明用户提供的密码不对,可以直接给前端返回一个提示;如果比对没有问题,说明用户提供的账户和密码是正确的,此时登录成功
登录成功之后,需要生成一个标识用户身份的token,返回给前端,前端会将token保存起来
用户后面访问系统的时候,需要携带着这个token,而我们后端需要编写一个拦截器,用于拦截请求,校验token
校验通过,则放行请求,正常访问;校验失败,则禁止通行,返回提示
1-4 说一下文章发布的流程
文章发布的本质就是对用户发表的文章内容进行审核,审核通过才能进行发布成功
首先,从前端接收文章信息,并保存到数据库中
其次,在保存完文章信息后,进行一个异步调用文章审核功能,文章审核使用的是阿里云的文字审核和图片审核
接下来,只有审核通过后,才会使用feign来调用文章微服务,进行文章的新增或修改
在文章微服务新增完成后,返回文章ID,并保存到数据库
如果审核失败,根据阿里云审核提示,修改文章失败原因,并更新到数据库