workman服务端开发模式-应用开发-后端api登录业务逻辑说明

一、后端api业务逻辑说明

后端业务框架采用的是thinkphp6开发的,用的是thinkphp6自带的路由对url做内部管理的。

1、没有登录的状态

用的是非法路由拦截与登录业务、公有业务及测试控制。当前端系统访问后端api的时候,总控会通过api访问的头部token进行数据验证,如果不存在或是过期的情况下,会以错误方式返回给前端系统并附带code码为50034,表示需要登录。而前端系统接到50034的错误提示时,基本会清理本地的cookie后跳转到登录页面。

2、有登录状态

通过路由转到指定的api控制方法后,优先进行token鉴权验证及token延期。其次按照api的控制方法进行数据查询、添加、启禁用、删除等操作。操作失败的情况下,错误总控会直接返回详细错误并附带code码为50000,操作成功的情况下,会直接返回成功的提示并附带code码为20000。目前可以操作的功能有管理员控制、角色控制、菜单控制、登录者信息控制、视频类型参数控制、图片类型参数控制、文档参数控制、短信类型参数控制、系统配置控制、上传配置控制、邮件通道配置控制、短信通道配置控制、部门类型参数控制、等级类型参数控制等。

二、后端登录api业务逻辑说明

当用户请求Login/doLogin方法的时候,第一步验证用户提交的参数格式,如果错误的情况下,会直接返回具体的错误提示并附带code码为50000,让前端系统提示给用户并让用户手动修改。如果成功的情况下进入第二步,根据账号从数据库读取取出数据,对数据进行分析,如果失败的情况下会直接返回具体的错误提示并附带code码为50000,让前端系统提示给用户并让用户手动修改。如果成功的情况下进行第三步,验证当前需要登录的用户是否在别的电脑上已经登录了且没有退出,如果发现登录了的情况下,这个时候就需要找到用户对应的客户编号,然后发起退出通知。成功后进行第四步,生成当前账号对应的token数据到数据库,生成失败的情况下直接返回具体的错误提示并附带code码为50000,让前端系统提示给用户并让用户手动修改。如果成功的情况下,进入第五步,生成token对应的临时缓存参数并返回给前端系统。

三、后端api业务逻辑说明

四、主架构的逻辑图

相关推荐
KmSH8umpK3 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第八篇
数据库·redis·分布式
KmSH8umpK6 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第七篇
数据库·redis·分布式
_F_y11 小时前
仿RabbitMQ实现消息队列-服务端核心模块实现(4)
分布式·rabbitmq
zx28596340013 小时前
Laravel 8.x 核心特性全面解析
php·laravel
nvd1113 小时前
企业级全场景 API 网关实践:基于 Kong Hybrid 模式的跨 VPC 部署与 GitOps 治理
gateway·kong
nvd1113 小时前
深度解析:Kong Hybrid 模式与 KIC (Gateway API) 架构演进与核心异同
架构·gateway·kong
Albert Edison14 小时前
【RabbitMQ】发布确认模式(使用案例)
分布式·rabbitmq·ruby
Gh0st_Lx15 小时前
【6】为什么有了 HTTP/1.1 ,还要 HTTP/2 和 HTTP/3
网络协议·http·php
xingpanvip15 小时前
星盘接口开发文档:组合三限盘接口指南
android·开发语言·前端·python·php·lua
zx28596340015 小时前
Laravel10.x重磅升级:核心特性全解析
mysql·gateway·智能路由器