1-1 请说一下你项目中是如何进行项目管理和发布的
我们项目中主要是用到了GOGS进行项目代码的管理,使用Jenkins来对代码进行发布的。
首先,GOGS是部署到我们公司的服务器上的,可以保证代码的安全,其次,GOGS可以模拟企业开发的代码管理,在日常的工作中,我可以进行代码的推送拉取。代码的发布我们是用到了Jenkins,因为它可以实现项目的持续集成,在我向GOGS执行push操作的时候,GOGS会向Jenkins发一个POST请求,这个请求的具体内容可以在GOGS里设置,请求体里会包含Jenkins要调用的微服务的名称,Jenkins接收到请求后,会去GOGS里拉取代码,再去Nacos里调用相应的微服务,进行重启,就实现了项目的持续集成,以上就是我们公司项目管理和发布的流程。
1-2 现在浏览器点击按钮出现了一个报错,如何定位发生问题的代码
首先,按住F12打开浏览器的开发者模式,然后点击按钮,查看发出的请求的地址,如果请求地址中不存在端口号,那就是默认的http的80端口,会转发到Nginx,此时去查看nginx.conf文件,把请求转发到哪个微服务了,一般是先转发到网关,网关再转发的对应的微服务,如果转发到网关,就去网关的yml配置文件中找对应微服务的名称,定位出对应的微服务后,根据请求的方式和请求路径定位出具体的controller中的方法,再打断点进行一步步的调试,最终发现问题解决问题,以上就是定位bug的方式。
1-3 你的项目中进行用户的登录和检验的详细流程是怎样的
当用户点击登陆按钮时,我们会先去数据库查询此用户是否存在,如果不存在,提示用户注册或者让他直接用手机号验证码进行登录,然后把该用户保存到我们的数据库中,如果用户用账号密码登录,验证用户名和密码是否匹配,如果匹配,返回token,并将token缓存到redis,token作为key,用户信息作为value,并设置一个过期时间,如果用户用手机验证码登录,先调用验证码接口,把验证码缓存到redis,用户提交后,核对用户输入的验证码和redis中的验证码是否一致,若一致,返回token,并将token缓存到redis。当用户登陆成功后,访问程序的其他接口,都会携带token,当用户向服务器发送请求时,拦截器会先拦截请求校验token,如果解析成功,放行请求,解析失败,就会提示用户未登录,以上就是登录和检验的流程。
1-4 说一下文章发布的流程
首先,文章创作者点击发布请求后,先把文章内容保存到数据库,并将文章的状态修改为审核中,然后解析文章内容,分成文本,图片,视频等类型的内容,将文本存到数据库,将图片视频存到MinIO,然后调用第三方的内容审核工具,进行审核,若全部审核通过,会将文章直接发布,并将文章保存到ES,并制作前端静态化页面,如果审核不通过,先获取到不通过的原因,存到数据库并返回给文章创作者,如果需要人工二次审核,会由平台管理员判断是否通过,若不通过,同样返回不通过的原因,以上就是文章发布的流程。
第一天业务题
于 2024-01-12 16:00:11 首次发布
本文描述了项目管理中的GOGS和Jenkins协作、浏览器错误定位方法、用户登录验证流程,以及文章发布的详细步骤,涵盖了从代码管理到用户认证和内容审核的全过程。
摘要由CSDN通过智能技术生成