模块、服务、接口命名示例

一、项目整体架构图示例


二、模块命名规范

1.spring cloud 基础模块命名示例

模块 项目名
注册中心 cloud-eureka
网关 cloud-zuul
配置中心 cloud-config-server
熔断监控(ui) cloud-hystrix-dashboard
健康检查 cloud-hystrix-dashboard
链路追踪 cloud-zipkin-ui

2.基础common模块命名示例

所有服务都引用的一个 二方库。

模块 项目名
通用,工具类,异常,校验 internal-common

3.能力层相关模块命名示例

模块 项目名
app升级 service-app-update
订单 service-order
短信 service-sms
验证码 service-verification-code
钱包 service-wallet
乘客用户管理 service-passenger-user

4.业务层相关模块命名示例

模块 项目名
乘客端 api-passenger
司机端 api-driver

三、接口规范设计

bash 复制代码
https://www.amap.com/v4/formatted_address/meta?key=xxx
  1. 协议:https、http等

  2. 域名:/restapi.yuming.com/

  3. 版本:v1

  4. 路径:/xxoo/xxoo/ (名词)

  5. 动作:

    ​(1)post:新建

    ​(2)put:修改(修改后的全量数据)

    (3)patch:修改(修改哪个,传哪个)

    (4)delete:删除

    (5)get:查询。

  6. 单词统一使用下划线或者驼峰格式,如下

    addressCompent或formatted_address

四、接口安全设计

1.CIA: 保密性(Confidential),完整性(integrity),可用性(applicability)

(1)敏感数据传输和存储要加密,如手机号、身份证号要脱敏------保密性

(2)数据不丢失、被人篡改后接口无效------完整性

2.数据层面:防止sql注入

select * form table where name = (变量1;delete table)

可使用过滤 jsoup框架。

3.xss: spring-htmlUtils。

在正常用户请求中执行了黑客提供的恶意代码,问题出在:用户数据没有过滤,转义。

csrf : 人机交互。token。

冒充别人的登录信息,问题出在:没有防范不信任的调用。

4.数据权限控制。

jsoup里的xss whitelist(白名单)有6种方法,一个构造方法和5种静态方法。

相关推荐
斯维赤9 分钟前
OCR到底是接入第三方API 还是自己封装?
java·ocr
码智社26 分钟前
Redis 哨兵模式详解:从原理到生产实践
java·redis
救救孩子把35 分钟前
结构化输出为何“格式正确、答案错误”?JSON Schema 的能力边界
android·java·json·agent·agent服务
silvamux_1 小时前
微头条爆款体平台适配实测:把交付要求变成可计算的指标
java·线性代数·算法·决策树·矩阵
论文复现现场1 小时前
DeepSeek V4.1 Flash 和 V4 Pro 有什么区别?API 价格、性能与迁移建议
java·服务器·人工智能·python·大模型api·deepseek·deepseek v4.1
郭小李1 小时前
转发与重定向
java·服务器·数据库
你看我名字1 小时前
数眼智能 Search + Reader 实战:联网问答怎样避免“搜到了,却引用错了”
android·java·开发语言
MetaLite2 小时前
Spring Boot 加了 @Valid,嵌套参数为什么还没校验?
java·spring boot·后端
半杯咖啡半行码2 小时前
QML与 Qt Quick入门实战:从零基础到 C++ 双向通信详解
java·qt·交互
霸道流氓气质2 小时前
Lingua 语言检测库:n-gram 统计模型、置信度阈值调优与 Spring Boot 分层检测管道的生产级实战
java·spring boot·后端