Skip to content

Commit d5eaf84

Browse files
committed
feat(docs): update v1 api
1 parent 94dbe3f commit d5eaf84

File tree

1 file changed

+102
-59
lines changed

1 file changed

+102
-59
lines changed

docs/docs/api/v1.md

Lines changed: 102 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
### 获取当前配置
2020

21-
**GET** `/config`
21+
**GET** `/api/config`
2222

2323
获取当前运行的完整配置信息。
2424

@@ -29,28 +29,38 @@
2929

3030
### 更新配置
3131

32-
**POST** `/config`
32+
**POST** `/api/config`
3333

3434
更新并重启服务使用新的配置。
3535

3636
请求体:
3737

3838
```json
3939
{
40-
"type": "配置类型",
41-
"content": "配置内容"
40+
"path": "配置文件路径",
41+
"poll": {
42+
"url": "配置URL",
43+
"interval": 更新间隔(可选)
44+
},
45+
"storage": {
46+
"folder": "存储文件夹",
47+
"key": "存储键名"
48+
},
49+
"text": "配置文本内容"
4250
}
4351
```
4452

53+
注意:请求体中的字段是可选的,根据配置来源选择相应的字段。
54+
4555
响应: `null`
4656

4757
## 系统信息
4858

4959
### 获取注册表信息
5060

51-
**GET** `/registry`
61+
**GET** `/api/registry`
5262

53-
获取所有已注册的网络类型和代理类型
63+
获取所有已注册的网络类型和服务器类型
5464

5565
响应:
5666

@@ -63,19 +73,19 @@
6373
}
6474
// ... 其他网络类型
6575
},
66-
"proxy": {
67-
"<代理类型名称>": {
76+
"server": {
77+
"<服务器类型名称>": {
6878
"schema": "<JSON Schema>",
69-
"description": "代理类型描述"
79+
"description": "服务器类型描述"
7080
}
71-
// ... 其他代理类型
81+
// ... 其他服务器类型
7282
}
7383
}
7484
```
7585

7686
### 获取系统状态
7787

78-
**GET** `/state`
88+
**GET** `/api/state`
7989

8090
获取系统当前运行状态。
8191

@@ -85,42 +95,44 @@
8595

8696
### 获取所有连接
8797

88-
**GET** `/connections`
98+
**GET** `/api/connection`
8999

90100
获取当前所有活动连接的信息。
91101

92102
响应:
93103

94104
```json
95105
{
96-
"connections": [
97-
{
98-
"id": "<连接UUID>",
99-
"local_addr": "<本地地址>",
100-
"remote_addr": "<远程地址>",
101-
"net": "<使用的网络名称>",
102-
"upload": "<上传字节数>",
103-
"download": "<下载字节数>",
104-
"start_time": "<开始时间>",
105-
"chains": ["<经过的代理链>"]
106+
"connections": {
107+
"<连接UUID>": {
108+
"protocol": "<协议>",
109+
"addr": "<地址>",
110+
"upload": <上传字节数>,
111+
"download": <下载字节数>,
112+
"start_time": <开始时间戳>,
113+
"ctx": {
114+
"src_socket_addr": "<源地址>",
115+
"dest_domain": "<目标域名>",
116+
"net_list": ["<经过的网络列表>"]
117+
}
106118
}
107-
],
108-
"upload": "<总上传字节数>",
109-
"download": "<总下载字节数>"
119+
},
120+
"total_upload": <总上传字节数>,
121+
"total_download": <总下载字节数>
110122
}
111123
```
112124

113125
### 关闭所有连接
114126

115-
**DELETE** `/connections`
127+
**DELETE** `/api/connection`
116128

117129
关闭所有活动的连接。
118130

119-
响应:返回已停止的连接信息,格式与 GET `/connections` 相同。
131+
响应:返回已停止的连接信息,格式与 GET `/api/connection` 相同。
120132

121133
### 关闭指定连接
122134

123-
**DELETE** `/connection/{uuid}`
135+
**DELETE** `/api/connection/{uuid}`
124136

125137
关闭特定 UUID 的连接。
126138

@@ -137,7 +149,7 @@ false // 操作失败
137149

138150
### WebSocket 连接监控
139151

140-
**WebSocket** `/connection?patch=<boolean>&without_connections=<boolean>`
152+
**WebSocket** `/api/stream/connection?patch=<boolean>&without_connections=<boolean>`
141153

142154
通过 WebSocket 实时监控连接状态。
143155

@@ -152,22 +164,23 @@ false // 操作失败
152164

153165
```json
154166
{
155-
"type": "full",
156-
"value": {
157-
"connections": [
158-
{
159-
"id": "<连接UUID>",
160-
"local_addr": "<本地地址>",
161-
"remote_addr": "<远程地址>",
162-
"net": "<使用的网络名称>",
163-
"upload": "<上传字节数>",
164-
"download": "<下载字节数>",
165-
"start_time": "<开始时间>",
166-
"chains": ["<经过的代理链>"]
167+
"full": {
168+
"connections": {
169+
"<连接UUID>": {
170+
"protocol": "<协议>",
171+
"addr": "<地址>",
172+
"upload": <上传字节数>,
173+
"download": <下载字节数>,
174+
"start_time": <开始时间戳>,
175+
"ctx": {
176+
"src_socket_addr": "<源地址>",
177+
"dest_domain": "<目标域名>",
178+
"net_list": ["<经过的网络列表>"]
179+
}
167180
}
168-
],
169-
"upload": "<总上传字节数>",
170-
"download": "<总下载字节数>"
181+
},
182+
"total_upload": <总上传字节数>,
183+
"total_download": <总下载字节数>
171184
}
172185
}
173186
```
@@ -176,12 +189,11 @@ false // 操作失败
176189

177190
```json
178191
{
179-
"type": "patch",
180-
"value": [
181-
{ "op": "replace", "path": "/upload", "value": "<新的上传字节数>" },
192+
"patch": [
193+
{ "op": "replace", "path": "/total_upload", "value": <新的上传字节数> },
182194
{
183195
"op": "add",
184-
"path": "/connections/-",
196+
"path": "/connections/<uuid>",
185197
"value": {
186198
/* 新增的连接信息 */
187199
}
@@ -195,7 +207,7 @@ false // 操作失败
195207

196208
### 更新代理选择
197209

198-
**POST** `/select/{net_name}`
210+
**POST** `/api/net/{net_name}`
199211

200212
更新 Select 类型代理的选择。
201213

@@ -215,7 +227,7 @@ false // 操作失败
215227

216228
### 测试延迟
217229

218-
**GET** `/delay/{net_name}?url={url}&timeout={timeout}`
230+
**GET** `/api/net/{net_name}/delay?url={url}&timeout={timeout}`
219231

220232
测试指定代理节点的网络延迟。
221233

@@ -247,17 +259,17 @@ null
247259

248260
### 获取用户数据
249261

250-
**GET** `/userdata/{key}`
262+
**GET** `/api/userdata/{path}`
251263

252-
获取指定键的用户数据
264+
获取指定路径的用户数据
253265

254266
响应:存储的用户数据对象,格式取决于存储时的数据类型
255267

256268
### 设置用户数据
257269

258-
**PUT** `/userdata/{key}`
270+
**PUT** `/api/userdata/{path}`
259271

260-
设置指定键的用户数据
272+
设置指定路径的用户数据
261273

262274
响应:
263275

@@ -269,9 +281,9 @@ null
269281

270282
### 删除用户数据
271283

272-
**DELETE** `/userdata/{key}`
284+
**DELETE** `/api/userdata/{path}`
273285

274-
删除指定键的用户数据
286+
删除指定路径的用户数据
275287

276288
响应:
277289

@@ -283,7 +295,7 @@ null
283295

284296
### 列出所有用户数据
285297

286-
**GET** `/userdata`
298+
**GET** `/api/userdata`
287299

288300
获取所有用户数据的键列表。
289301

@@ -303,8 +315,39 @@ null
303315

304316
### WebSocket 日志流
305317

306-
**WebSocket** `/log`
318+
**WebSocket** `/api/stream/logs`
307319

308320
通过 WebSocket 实时接收系统日志。
309321

310-
响应:每个 WebSocket 消息包含一条日志文本字符串。
322+
响应:每个 WebSocket 消息包含一条日志记录的 JSON 对象,格式如下:
323+
324+
```json
325+
{
326+
"timestamp": "2023-01-01T12:00:00Z",
327+
"level": "INFO",
328+
"message": "日志消息",
329+
"target": "目标模块",
330+
"fields": {
331+
"message": "详细信息",
332+
"ctx": "上下文JSON字符串",
333+
"parsedCtx": {
334+
"dest_socket_addr": "目标地址",
335+
"src_socket_addr": "源地址",
336+
"dest_domain": "目标域名",
337+
"net_list": ["经过的网络列表"]
338+
},
339+
"span": {
340+
"addr": "地址",
341+
"name": "名称",
342+
"self": "自身标识"
343+
},
344+
"spans": [
345+
{
346+
"addr": "地址",
347+
"name": "名称",
348+
"self": "自身标识"
349+
}
350+
]
351+
}
352+
}
353+
```

0 commit comments

Comments
 (0)