# api **Repository Path**: a-bleak-morning/api ## Basic Information - **Project Name**: api - **Description**: 基于React+Spring Boot+Dubbo+Gateway的API接口开放调用平台。管理员可以接入并发布 接口,可视化各接口调用情况;用户可以开通接口调用权限、浏览接口及在线调试,并通过客户端SDK轻松调用接口。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-06-23 - **Last Updated**: 2023-08-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 项目背景 API接口调用平台,帮助企业、个人统一开放接口,减少沟通成本,避免重复造轮子,为业务高效赋能。 - 普通用户:注册登录,开通接口调用权限,使用接口。 - 后台:调用统计和可视化分析接口调用情况,管理员发布接口、下线接口、新增接口。 主要功能: - API接入 - 防止攻击(安全性) - 不能随便调用(限制、开通) - 统计调用次数 - 计费 - 流量保护 架构图: ![img](https://img1.imgtp.com/2023/08/09/tF6yo1iw.png) 技术选型: 后端: - Spring Boot - Spring Boot Starter(SDK开发) - Dubbo (RPC) - Nacos(注册中心) - Spring Cloud Gateway(网关、限流、日志实现) 启动方式: 后端: - api-backend:7529端口,后端接口管理(上传、下线、用户登录)http://localhost:7529/api/doc.html - api-gateway:8090端口,网关 - api-interface:8123端口,提供各种接口服务(可以有很多个且分布在各个服务器)。这里的tests有个发送请求的跑通流程的测试用例。 - api-client-sdgk:客户端SDK,无端口,发送请求到8090端口,由网关进行转发到后端的api-interface 详细设计文档: - 见doc目录下