# API开放平台 **Repository Path**: baipengayn/api-open-platform ## Basic Information - **Project Name**: API开放平台 - **Description**: API开放平台 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-03-14 - **Last Updated**: 2024-03-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # API开放平台 #### 介绍 API开放平台 #### 软件架构 ##### 前端:vue element ui ##### 后端: - Java - Spring SpringMVC MyBatis MyBatis-plus SpringBoot - Nacos Sentinel Gateway Openfeign - mysql redis #### 项目介绍: 1. 根据业务流程,将整个项目后端分为用户中心,接口管理中心,公共模块,客户端SDK,API网关五个模块,并使用maven进行多模块管理 2. 基于MyBatis Plus 框架的QueryWrapper 实现对MySQL数据库的灵活查询,并使用MyBatisX插件自动生成后端代码,提高开发效率 3. 为了防止接口被恶意调用,设计API签名认证算法,为用户分配唯一的ak/sk以鉴权,保障接口的安全性 4. 为解决开发者调用成本过高的问题,基于Spring Boot Starter 开发了客户端SDK,基于配置简化调用,实现一行代码即可调用接口,提高接口调用体验 5. 采用Spring Boot Gatewat 作为API网关,实现路由转发。访问控制,请求参数校验等业务,提高安全性的同时,便于系统的维护,并集成Swagger 实现统一文档 ,提高开发效率 6. 为解决子系统内代码重复的问题,抽象模型层为公共模块,并使用Openfeign 框架实现子系统间高性能接口调用,减少重复代码 7. 为了保证接口的稳定性,采用Sentinel进行限流保护,保证接口的可用选项 8. 集成Nacos作为注册中心和配置中心,统一管理服务,并实现白名单和Sentinel流控规则的动态刷新 #### 个人博客:@javadadi.online