@@ -6,15 +6,35 @@ Lavcode 支持通过接口的方式存取数据
66
77输入接口地址和密码即可使用
88
9- 本教程使用源码提供的 ` lavcode-node ` 快速部署接口
9+ ## 后端接口方案
10+
11+ Lavcode 没有提供直接用的接口,因为大多数人都不愿意将密码存储到别人那里,因此你需要自行部署
12+
13+ 源码提供两种方案实现后端接口。对于复杂需求,也可以仿照这两种方案实现自定义方案
14+
15+ 1 . 方案 1
16+
17+ [ cloudbase] ( https://www.cloudbase.net/ ) + nodejs + [ ipare] ( https://ipare.org )
18+
19+ 源码目录 ` lavcode-node `
20+
21+ 此方案使用比较简单,适合零开发经验的用户,稍微有些开发经验就更好了
22+
23+ 2 . 方案 2
24+
25+ .NET6 + Asp + Sql Server
26+
27+ 源码目录 ` Lavcode.Asp `
28+
29+ 此方案使用起来稍复杂,需要一定的开发基础
1030
1131## 部署接口
1232
13- Lavcode 没有提供直接用的接口,因为大多数人都不愿意将密码存储到别人那里,因此你需要自行部署
33+ 此部分同样适用于 0 开发基础的普通用户
1434
15- 在源码 ` lavcode-node ` 文件夹中,提供了 ` nodejs ` + 腾讯云 ` CloudBase ` 的方式部署云接口
35+ 使用源码提供的 ` lavcode-node ` 快速部署接口
1636
17- 你需要按以下步骤进行
37+ 按以下步骤进行
1838
19391 . 一键部署
2040
@@ -58,7 +78,7 @@ lavcode-node 使用了 nodejs 框架 [ipare](https://ipare.org),按 Restful
5878
5979接口的默认页面是 ` swagger ` ,同样是由 [ ipare] ( https://ipare.org ) 自动生成,你可以通过修改源码的方式隐藏 ` swagger `
6080
61- ## 本地运行
81+ ### 本地运行
6282
6383你也可以选择本地运行 ` lavcode-node `
6484
@@ -73,14 +93,107 @@ TENCENT_SECRET_ID=腾讯云 SecretId
7393
7494` SecretKey ` 和 ` SecretId ` 的获取参考 < https://cloud.tencent.com/developer/article/1385239 >
7595
76- 用 vscode 打开 ` lavcode-node ` 目录,按 F5 即可启动调试
96+ 先运行命令
97+
98+ ``` sh
99+ npm install
100+ ```
101+
102+ 然后用 vscode 打开 ` lavcode-node ` 目录,按 F5 即可启动调试
103+
104+ 或执行命令
105+
106+ ``` sh
107+ npm start
108+ ```
109+
110+ ### 部署
111+
112+ 可以本地部署,也可以使用 ` GitHub Actions ` 部署
113+
114+ #### 本地部署
115+
116+ 与前面 ` 本地运行 ` 部分创建了 ` .env.local ` 文件类似,但只用确保包含下面内容
117+
118+ ```
119+ SECRET_KEY=云接口密码
120+ ENV_ID=CloudBase 环境Id
121+ ```
122+
123+ 然后在 ` lavcode-node ` 目录,运行下面命令
124+
125+ ``` sh
126+ npm install
127+
128+ npx tcb login
129+ npx tcb framework deploy --mode local
130+ ```
131+
132+ #### 使用 ` GitHub Actions ` 部署
133+
134+ 1 . 设置 GitHub Secrets
135+
136+ Fork 仓库后,设置 GitHub Secrets,添加如下 Secrets
137+
138+ - NODE_ENV_ID: CloudBase 环境 Id
139+ - NODE_SECRET_KEY: 云接口密码
140+ - TENCENT_SECRET_ID: 腾讯云 SecretId
141+ - TENCENT_SECRET_KEY: 腾讯云 SecretKey
142+
143+ ![ Secrets] ( ./api/secrets.png )
144+
145+ ` SecretKey ` 和 ` SecretId ` 的获取参考 < https://cloud.tencent.com/developer/article/1385239 >
146+
147+ 2 . 修改脚本
148+
149+ 修改源码文件 ` .github/workflows/publish-node.yml `
150+
151+ 删除此行:` if: github.repository == 'hal-wang/Lavcode' `
152+
153+ 3 . 提交代码
154+
155+ 上面操作完成后,每次提交代码,都会自动部署
156+
157+ ## Lavcode.Asp 介绍
158+
159+ Lavcode.Asp 用 C# 语言开发,使用了 Asp.Net Core 框架,按 Restful 规范实现接口
160+
161+ 数据库使用 Sql Server + EF,可以很方便的切换数据库,如 MySQL 或 Sqlite
162+
163+ 接口的默认页面是 ` swagger ` ,你可以通过修改源码的方式隐藏 ` swagger `
164+
165+ ### 本地运行
166+
167+ 在 ` Lavcode.Asp ` 文件夹中,创建文件 ` appsettings.local.json ` ,内容如
168+
169+ ``` json
170+ {
171+ "SecretKey" : " your_secret_key" ,
172+ "ConnectionStrings" : {
173+ "MSSQL" : " Server=127.0.0.1;Database=Lavcode;uid=sa;Password=H;Encrypt=True;TrustServerCertificate=True;"
174+ }
175+ }
176+ ```
177+
178+ - ` SecretKey ` 为云接口密码
179+ - ` ConnectionStrings.MSSQL ` 为数据库连接字符串,一般修改地址和端口即可
180+
181+ 无需手动创建数据库,数据库会在首次运行时自动创建
182+
183+ 使用 vs 2022 或更新版本打开 ` Lavcode.sln ` ,启动项目选择 ` Lavcode.Asp ` ,按下 F5 即可开始调试
184+
185+ ### 部署
186+
187+ 与其他 Asp.NET Core 项目部署方式相同
188+
189+ 可以部署到 ` IIS ` / ` Docker ` / ` Apache ` 等
77190
78- 或执行命令 ` npm start `
191+ 部署时别忘记修改 ` appsettings.json ` 文件中的 ` SecretKey ` 和 ` ConnectionStrings.MSSQL `
79192
80193## 安全性
81194
82195云接口使用 [ jwt] ( https://jwt.io/ ) 来保证接口不会被非法调用
83196
84197## 开发接口
85198
86- 你也可以参考源码 ` lavcode-node ` 自己开发后端接口,能更灵活的更换语言框架和数据库
199+ 你也可以参考源码提供的两种后端方案, 自己开发后端接口,能更灵活的更换语言框架和数据库
0 commit comments