mirror of
https://github.com/ZSCNetSupportDept/website.git
synced 2025-10-28 17:05:03 +08:00
后端API文档(内测)
This commit is contained in:
21
docs/devdocs/_后端API服务_/01-概览.md
Normal file
21
docs/devdocs/_后端API服务_/01-概览.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# 后端API服务
|
||||
## 介绍
|
||||
该项目作为网维的统一后端API接口而设计,连接网维的数据库,并提供一系列接口给前端以支持网维日常的业务逻辑,其他开发人员可以直接调用这些接口,从而专注与前端,以便于降低整个系统设计的复杂度
|
||||
|
||||
该项目采用Go语言编写,Web框架采用echo,ORM框架为gorm,
|
||||
## 项目地址
|
||||
https://github.com/ZSCNetSupportDept/zscnetworksupport-api
|
||||
## 构建
|
||||
要想构建该项目,你需要安装`Go`和`make`,在一台linux机器上构建
|
||||
|
||||
输入`make install`即可安装本项目的依赖,而不构建
|
||||
|
||||
输入`make build`即可构建该项目,项目放在`make`文件夹下
|
||||
## 部署
|
||||
只需要把可执行文件放在生产环境下运行即可,本项目可能会提供一些静态文件访问,需要将`static`放在与可执行文件相同的目录下
|
||||
## 配置
|
||||
程序接受,且只接受一个参数,为配置文件的路径,关于配置文件的格式,请参照“配置”一章
|
||||
## 运行
|
||||
运行后,程序会将日志和错误文件输出到stdout中,你可以配置系统服务来使程序开机自启动,将输出定向到日志或者stderr里
|
||||
|
||||
在运行程序之后,你还要配置一些反向代理的软件,来将流量导向程序所监听的端口,你还要定期续期https证书,以保证https访问
|
||||
13
docs/devdocs/_后端API服务_/02-配置.md
Normal file
13
docs/devdocs/_后端API服务_/02-配置.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# 配置
|
||||
# 介绍
|
||||
配置为一个`json`文件,其中,各个字段的定义如下:
|
||||
|
||||
`port`:一个数字,为程序所监听的端口
|
||||
|
||||
`database`:
|
||||
- `Type`:一个字符串,指定了所使用的数据库的类型,需要在`MySQL` `PostgreSQL` `SQLite`中选择一个
|
||||
- `Path`:对于SQLite填写数据库的位置,对于其他的数据库填写URL
|
||||
- `Port`:数据库所监听的端口,SQLite可以不用填,以下也是
|
||||
- `User`:数据库用户名
|
||||
- `name`:数据库名称,
|
||||
- `Password`:数据库密码
|
||||
22
docs/devdocs/_后端API服务_/03-结构.md
Normal file
22
docs/devdocs/_后端API服务_/03-结构.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# 结构
|
||||
仓库项目的结构如下:
|
||||
|
||||
`main.go`:项目程序的起点,从此处开始运行
|
||||
|
||||
`config`:存放了读取配置,提供配置变量相关的代码
|
||||
|
||||
`databases`:提供了连接数据库相关的代码,提供主数据库连接变量(Usingdb)
|
||||
|
||||
`handlers`:为handler的存放地点,一类业务为一个对象,handler作为其方法实现
|
||||
|
||||
`model`:业务所采用的模型,定义了一个业务对象的存储和相关方法
|
||||
|
||||
`use`:在这里注册所有需要提供的API和中间件,程序将使用这里的配置
|
||||
|
||||
`make`:存放了构建所产生的程序
|
||||
|
||||
`static`:存放了静态文件以进行路由
|
||||
|
||||
## 原理
|
||||
当程序运行时:
|
||||
main()将调用sysinit(),读取参数中的配置,将配置记录在全局变量`config.UseConfig`中
|
||||
Reference in New Issue
Block a user