文章目录
首先添加目录、文档信息、版本信息、还有就是悬浮的目录,以上信息如果公司文档编辑平台有组件的话会比较方便

下面是具体的内容,其实从上图的目录也能了解个大概
一、需求
如果有添加水平线的功能的话,这里可以添加一条长长的水平线,让页面更规整,每个部分也更清晰。
如果有需求链接的话,添加需求链接
描述需求背景与需求内容
如:与某某公司合作实现信息跨平台互通,让用户无需在多个平台重复填写信息,给用户带来更好的使用感。此次信息互通包含**、**方面的信息。
二、核心技术预研
如果有用到新的技术,或者要对接其他平台接口,可以写在这里(除了crud的)。
比如:为了提高搜索速度,使用clickhouse,然后介绍一下对于使用clickhouse的优势以及注意事项等
三、实现设计
3.1 基本原理
此处阐述设计的思想,如采用设计模式、语言,是否支持多并发、传输协议等,业务模型、分析后提取的通用模型等,并提供该story流程图。
如:第一步->第二步->第三步
或者写接口逻辑
3.2 功能点详细设计
各个功能点设计思想,如核心模块、牵涉业务逻辑复杂或服务间调用,需要明确消息状态变更,还需提供时序图。
这一部分可以扩展,每个功能点一项
3.3 无缝升级
如果有其他模块设计思想,请说明或提供跳转链接
升级时的变动处理,这一部分也可以没有
四、API设计
这一部分就是写我们最熟悉的接口啦
当前需求需要实现的API的详细设计
当前需求对其他可能依赖的模块的API需求
如果无API实现或者需求依赖,说明:无。
4.1 XXX接口
4.1.1 接口地址和方法
序号 | 项目 | 内容 | 说明 |
---|---|---|---|
1 | URL | https://{root_url}(这个地方也可以替换为ip:port)/api/接口地址 | 对接口的说明信息,没有就空着 |
2 | HEADER | 需要添加在header里的内容,一般为令牌,如AppKey: XXX或者Authorization: Bearer token | |
3 | 方法 | post/get(一般用这两个) |
4.1.2 参数说明
这里说明传入参数
参数说明:
序号 | 字段名称 | 字段类型 | 位置(可以没有此列,放在列表上方统一说明) | 字段说明 | 是否必须 |
---|---|---|---|---|---|
1 | 参数名 | string、int等 | query、body、path | 字段描述 | 否 |
4.1.3 正确返回结果
返回结果说明:如果公司有自己的返回结果规定,需要遵循
登录成功的返回:状态码为200
序号 | 字段名称 | 字段类型 | 字段说明 |
---|---|---|---|
1 | 参数名 | string、int等 | 字段描述 |
返回样例:
{
"msg": "操作成功",
"code": 200,
"data": {}
}
4.1.4 异常的返回结果
参考:公司的错误码规范
状态码:500
序号 | httpcode状态码 | 含义 | errorCode |
---|---|---|---|
1 | 500100 | 某错误描述 | 错误码 |
1 | 500 | 内部服务器错误 |
返回样例:
{
"msg": "内部服务器错误",
"code": 500
}
{
"msg": "内部服务器错误",
"code": 500,
"data": {
"errorCode": "模块名.错误类型.错误英文描述", #错误码,如:Product.InvalidParameter.FileIsNull
"description": "错误中文描述", #如:上传文件时,文件不能为空,上传失败
"solution": "错误处理提示", #如:请上传非空文件
"errorDetails": [], #报错详情
"errorLink": ""
}
}
五、数据库设计
有时候,我也会把nacos以及nginx配置更改放在这里,其实但分一节更合适
5.1 表名
这里也可以直接放sql语句
序号 | 字段名称 | 字段类型 | 字段说明 | 属性(该字段可无) | 备注(该字段可无) |
---|---|---|---|---|---|
1 | 参数名 | varchar(20)、int(20)等 | 字段描述 | 自增、主键、不可重复、默认false等属性说明 | 该字段的备注信息,如:预留、成功信息、保留等描述 |
六、其他必要的章节
有则编写,无则删除