接口鉴权和限流
附录
数据表
sql
CREATE TABLE `sys_api_route` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`route_name` varchar(50) NOT NULL DEFAULT '' COMMENT '路由名称',
`route_key` varchar(50) NOT NULL DEFAULT '' COMMENT '路由标识',
`remark` varchar(50) NOT NULL DEFAULT '' COMMENT '备注',
`status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态: 0 无效, 1 有效',
`version` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除: 0 否, 1 是',
`create_user_id` varchar(30) NOT NULL DEFAULT '' COMMENT '创建人标识',
`create_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '创建人姓名',
`create_time` datetime NOT NULL DEFAULT '1900-01-01 00:00:00' COMMENT '创建时间',
`update_user_id` varchar(30) NOT NULL DEFAULT '' COMMENT '更新人标识',
`update_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '更新人姓名',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_route_key` (`route_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='API路由';
CREATE TABLE `sys_api_user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '中文名称',
`app_uk` varchar(50) NOT NULL DEFAULT '' COMMENT '应用标识',
`user_token` varchar(50) NOT NULL DEFAULT '' COMMENT '用户Token',
`owner` varchar(50) NOT NULL DEFAULT '' COMMENT '持有人',
`status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态: 0 无效, 1 有效',
`version` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除: 0 否, 1 是',
`create_user_id` varchar(30) NOT NULL DEFAULT '' COMMENT '创建人标识',
`create_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '创建人姓名',
`create_time` datetime NOT NULL DEFAULT '1900-01-01 00:00:00' COMMENT '创建时间',
`update_user_id` varchar(30) NOT NULL DEFAULT '' COMMENT '更新人标识',
`update_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '更新人姓名',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_user_token` (`user_token`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='API用户';
CREATE TABLE `sys_api_user_route` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`user_token` varchar(50) NOT NULL DEFAULT '' COMMENT '用户Token',
`route_key` varchar(50) NOT NULL DEFAULT '' COMMENT '路由Key',
`minute_limit` int(11) NOT NULL DEFAULT '0' COMMENT '分钟限制;-1表示不限制调用量',
`hour_limit` int(11) NOT NULL DEFAULT '0' COMMENT '小时限制;-1表示不限制调用量',
`day_limit` int(11) NOT NULL DEFAULT '0' COMMENT '天限制;-1表示不限制调用量',
`status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态: 0 无效, 1 有效',
`version` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
`deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '逻辑删除: 0 否, 1 是',
`create_user_id` varchar(30) NOT NULL DEFAULT '' COMMENT '创建人标识',
`create_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '创建人姓名',
`create_time` datetime NOT NULL DEFAULT '1900-01-01 00:00:00' COMMENT '创建时间',
`update_user_id` varchar(30) NOT NULL DEFAULT '' COMMENT '更新人标识',
`update_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '更新人姓名',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_user_token_route_key` (`user_token`,`route_key`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COMMENT='API用户关联路由';