From 75273abda7c7083ad4a3aadfcdb591bfceb1c65a Mon Sep 17 00:00:00 2001 From: CityFun <31820853+zhengkunwang223@users.noreply.github.com> Date: Wed, 17 Dec 2025 16:50:11 +0800 Subject: [PATCH] fix: Resolve issue where website names are not displayed in logs for stream-type websites (#11379) --- agent/app/api/v2/website.go | 2 +- agent/app/service/website.go | 2 +- core/cmd/server/docs/docs.go | 460 +++++++++++++++++++++++++++--- core/cmd/server/docs/swagger.json | 460 +++++++++++++++++++++++++++--- core/cmd/server/docs/x-log.json | 51 ++-- 5 files changed, 864 insertions(+), 111 deletions(-) diff --git a/agent/app/api/v2/website.go b/agent/app/api/v2/website.go index 485c3429c..2db6b61ee 100644 --- a/agent/app/api/v2/website.go +++ b/agent/app/api/v2/website.go @@ -73,7 +73,7 @@ func (b *BaseApi) GetWebsiteOptions(c *gin.Context) { // @Security ApiKeyAuth // @Security Timestamp // @Router /websites [post] -// @x-panel-log {"bodyKeys":["primaryDomain"],"paramKeys":[],"BeforeFunctions":[],"formatZH":"创建网站 [primaryDomain]","formatEN":"Create website [primaryDomain]"} +// @x-panel-log {"bodyKeys":["alias"],"paramKeys":[],"BeforeFunctions":[],"formatZH":"创建网站 [alias]","formatEN":"Create website [alias]"} func (b *BaseApi) CreateWebsite(c *gin.Context) { var req request.WebsiteCreate if err := helper.CheckBindAndValidate(&req, c); err != nil { diff --git a/agent/app/service/website.go b/agent/app/service/website.go index cea4088c3..043b25c76 100644 --- a/agent/app/service/website.go +++ b/agent/app/service/website.go @@ -307,7 +307,7 @@ func (w WebsiteService) CreateWebsite(create request.WebsiteCreate) (err error) website.Protocol = constant.ProtocolHTTP } - createTask, err := task.NewTaskWithOps(primaryDomain, task.TaskCreate, task.TaskScopeWebsite, create.TaskID, 0) + createTask, err := task.NewTaskWithOps(website.PrimaryDomain, task.TaskCreate, task.TaskScopeWebsite, create.TaskID, 0) if err != nil { return err } diff --git a/core/cmd/server/docs/docs.go b/core/cmd/server/docs/docs.go index 86b099fc8..38e21af26 100644 --- a/core/cmd/server/docs/docs.go +++ b/core/cmd/server/docs/docs.go @@ -1895,6 +1895,41 @@ const docTemplate = `{ ] } }, + "/backups/check": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.BackupOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Check backup account", + "tags": [ + "Backup Account" + ] + } + }, "/backups/del": { "post": { "consumes": [ @@ -2751,6 +2786,50 @@ const docTemplate = `{ } } }, + "/containers/compose/clean/log": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ComposeLogClean" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Clean compose log", + "tags": [ + "Container" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name" + ], + "formatEN": "clean compose [name] logs", + "formatZH": "清理容器编排 [name] 日志", + "paramKeys": [] + } + } + }, "/containers/compose/operate": { "post": { "consumes": [ @@ -5324,47 +5403,6 @@ const docTemplate = `{ } } }, - "/core/backups/buckets": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ForBuckets" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "items": { - "type": "string" - }, - "type": "array" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "List buckets", - "tags": [ - "Backup Account" - ] - } - }, "/core/backups/client/:clientType": { "get": { "consumes": [ @@ -11464,6 +11502,53 @@ const docTemplate = `{ } } }, + "/files/preview": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.FileContentReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.FileInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Preview file content", + "tags": [ + "File" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "path" + ], + "formatEN": "Preview file content [path]", + "formatZH": "预览文件内容 [path]", + "paramKeys": [] + } + } + }, "/files/read": { "post": { "parameters": [ @@ -16230,6 +16315,50 @@ const docTemplate = `{ ] } }, + "/settings/ssh/conn/default": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SSHDefaultConn" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update local is conn", + "tags": [ + "System Setting" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "defaultConn" + ], + "formatEN": "update system default conn [defaultConn]", + "formatZH": "本地终端默认连接 [defaultConn]", + "paramKeys": [] + } + } + }, "/settings/update": { "post": { "consumes": [ @@ -17835,10 +17964,10 @@ const docTemplate = `{ "x-panel-log": { "BeforeFunctions": [], "bodyKeys": [ - "primaryDomain" + "alias" ], - "formatEN": "Create website [primaryDomain]", - "formatZH": "创建网站 [primaryDomain]", + "formatEN": "Create website [alias]", + "formatZH": "创建网站 [alias]", "paramKeys": [] } } @@ -18380,6 +18509,41 @@ const docTemplate = `{ ] } }, + "/websites/batch/https": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.BatchWebsiteHttps" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Batch set HTTPS for websites", + "tags": [ + "Website" + ] + } + }, "/websites/batch/operate": { "post": { "consumes": [ @@ -21531,6 +21695,41 @@ const docTemplate = `{ ] } }, + "/websites/stream/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.StreamUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update Stream Config", + "tags": [ + "Website" + ] + } + }, "/websites/update": { "post": { "consumes": [ @@ -22595,6 +22794,9 @@ const docTemplate = `{ "taskID": { "type": "string" }, + "timeout": { + "type": "integer" + }, "type": { "enum": [ "app", @@ -22653,6 +22855,21 @@ const docTemplate = `{ ], "type": "object" }, + "dto.ComposeLogClean": { + "properties": { + "name": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "required": [ + "name", + "path" + ], + "type": "object" + }, "dto.ComposeOperation": { "properties": { "force": { @@ -23811,6 +24028,9 @@ const docTemplate = `{ "isDisable": { "type": "boolean" }, + "isLocal": { + "type": "boolean" + }, "key": { "type": "string" }, @@ -25398,6 +25618,12 @@ const docTemplate = `{ }, "type": "array" }, + "processCount": { + "items": { + "type": "integer" + }, + "type": "array" + }, "speedValue": { "items": { "type": "integer" @@ -27212,6 +27438,17 @@ const docTemplate = `{ ], "type": "object" }, + "dto.SSHDefaultConn": { + "properties": { + "defaultConn": { + "type": "string" + }, + "withReset": { + "type": "boolean" + } + }, + "type": "object" + }, "dto.SSHInfo": { "properties": { "autoStart": { @@ -28653,6 +28890,9 @@ const docTemplate = `{ "status": { "type": "string" }, + "streamPorts": { + "type": "string" + }, "type": { "type": "string" }, @@ -29214,6 +29454,82 @@ const docTemplate = `{ ], "type": "object" }, + "request.BatchWebsiteHttps": { + "properties": { + "SSLProtocol": { + "items": { + "type": "string" + }, + "type": "array" + }, + "algorithm": { + "type": "string" + }, + "certificate": { + "type": "string" + }, + "certificatePath": { + "type": "string" + }, + "hsts": { + "type": "boolean" + }, + "hstsIncludeSubDomains": { + "type": "boolean" + }, + "http3": { + "type": "boolean" + }, + "httpConfig": { + "enum": [ + "HTTPSOnly", + "HTTPAlso", + "HTTPToHTTPS" + ], + "type": "string" + }, + "httpsPorts": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "ids": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "importType": { + "type": "string" + }, + "privateKey": { + "type": "string" + }, + "privateKeyPath": { + "type": "string" + }, + "taskID": { + "type": "string" + }, + "type": { + "enum": [ + "existed", + "auto", + "manual" + ], + "type": "string" + }, + "websiteSSLId": { + "type": "integer" + } + }, + "required": [ + "ids", + "taskID" + ], + "type": "object" + }, "request.BatchWebsiteOp": { "properties": { "ids": { @@ -31215,6 +31531,32 @@ const docTemplate = `{ ], "type": "object" }, + "request.StreamUpdate": { + "properties": { + "algorithm": { + "type": "string" + }, + "name": { + "type": "string" + }, + "servers": { + "items": { + "$ref": "#/definitions/dto.NginxUpstreamServer" + }, + "type": "array" + }, + "streamPorts": { + "type": "string" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "websiteID" + ], + "type": "object" + }, "request.SupervisorProcessConfig": { "properties": { "autoRestart": { @@ -31498,6 +31840,9 @@ const docTemplate = `{ "IPV6": { "type": "boolean" }, + "algorithm": { + "type": "string" + }, "alias": { "type": "string" }, @@ -31550,6 +31895,9 @@ const docTemplate = `{ "ftpUser": { "type": "string" }, + "name": { + "type": "string" + }, "parentWebsiteID": { "type": "integer" }, @@ -31568,9 +31916,18 @@ const docTemplate = `{ "runtimeID": { "type": "integer" }, + "servers": { + "items": { + "$ref": "#/definitions/dto.NginxUpstreamServer" + }, + "type": "array" + }, "siteDir": { "type": "string" }, + "streamPorts": { + "type": "string" + }, "taskID": { "type": "string" }, @@ -32767,6 +33124,9 @@ const docTemplate = `{ "type": "string" }, "type": "array" + }, + "type": { + "type": "string" } }, "type": "object" @@ -34002,6 +34362,9 @@ const docTemplate = `{ "accessLogPath": { "type": "string" }, + "algorithm": { + "type": "string" + }, "alias": { "type": "string" }, @@ -34086,6 +34449,12 @@ const docTemplate = `{ "runtimeType": { "type": "string" }, + "servers": { + "items": { + "$ref": "#/definitions/dto.NginxUpstreamServer" + }, + "type": "array" + }, "siteDir": { "type": "string" }, @@ -34095,6 +34464,9 @@ const docTemplate = `{ "status": { "type": "string" }, + "streamPorts": { + "type": "string" + }, "type": { "type": "string" }, diff --git a/core/cmd/server/docs/swagger.json b/core/cmd/server/docs/swagger.json index 580780109..82553ca9e 100644 --- a/core/cmd/server/docs/swagger.json +++ b/core/cmd/server/docs/swagger.json @@ -1891,6 +1891,41 @@ ] } }, + "/backups/check": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.BackupOperate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Check backup account", + "tags": [ + "Backup Account" + ] + } + }, "/backups/del": { "post": { "consumes": [ @@ -2747,6 +2782,50 @@ } } }, + "/containers/compose/clean/log": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.ComposeLogClean" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Clean compose log", + "tags": [ + "Container" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "name" + ], + "formatEN": "clean compose [name] logs", + "formatZH": "清理容器编排 [name] 日志", + "paramKeys": [] + } + } + }, "/containers/compose/operate": { "post": { "consumes": [ @@ -5320,47 +5399,6 @@ } } }, - "/core/backups/buckets": { - "post": { - "consumes": [ - "application/json" - ], - "parameters": [ - { - "description": "request", - "in": "body", - "name": "request", - "required": true, - "schema": { - "$ref": "#/definitions/dto.ForBuckets" - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "items": { - "type": "string" - }, - "type": "array" - } - } - }, - "security": [ - { - "ApiKeyAuth": [] - }, - { - "Timestamp": [] - } - ], - "summary": "List buckets", - "tags": [ - "Backup Account" - ] - } - }, "/core/backups/client/:clientType": { "get": { "consumes": [ @@ -11460,6 +11498,53 @@ } } }, + "/files/preview": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.FileContentReq" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/response.FileInfo" + } + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Preview file content", + "tags": [ + "File" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "path" + ], + "formatEN": "Preview file content [path]", + "formatZH": "预览文件内容 [path]", + "paramKeys": [] + } + } + }, "/files/read": { "post": { "parameters": [ @@ -16226,6 +16311,50 @@ ] } }, + "/settings/ssh/conn/default": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/dto.SSHDefaultConn" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update local is conn", + "tags": [ + "System Setting" + ], + "x-panel-log": { + "BeforeFunctions": [], + "bodyKeys": [ + "defaultConn" + ], + "formatEN": "update system default conn [defaultConn]", + "formatZH": "本地终端默认连接 [defaultConn]", + "paramKeys": [] + } + } + }, "/settings/update": { "post": { "consumes": [ @@ -17831,10 +17960,10 @@ "x-panel-log": { "BeforeFunctions": [], "bodyKeys": [ - "primaryDomain" + "alias" ], - "formatEN": "Create website [primaryDomain]", - "formatZH": "创建网站 [primaryDomain]", + "formatEN": "Create website [alias]", + "formatZH": "创建网站 [alias]", "paramKeys": [] } } @@ -18376,6 +18505,41 @@ ] } }, + "/websites/batch/https": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.BatchWebsiteHttps" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Batch set HTTPS for websites", + "tags": [ + "Website" + ] + } + }, "/websites/batch/operate": { "post": { "consumes": [ @@ -21527,6 +21691,41 @@ ] } }, + "/websites/stream/update": { + "post": { + "consumes": [ + "application/json" + ], + "parameters": [ + { + "description": "request", + "in": "body", + "name": "request", + "required": true, + "schema": { + "$ref": "#/definitions/request.StreamUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "security": [ + { + "ApiKeyAuth": [] + }, + { + "Timestamp": [] + } + ], + "summary": "Update Stream Config", + "tags": [ + "Website" + ] + } + }, "/websites/update": { "post": { "consumes": [ @@ -22591,6 +22790,9 @@ "taskID": { "type": "string" }, + "timeout": { + "type": "integer" + }, "type": { "enum": [ "app", @@ -22649,6 +22851,21 @@ ], "type": "object" }, + "dto.ComposeLogClean": { + "properties": { + "name": { + "type": "string" + }, + "path": { + "type": "string" + } + }, + "required": [ + "name", + "path" + ], + "type": "object" + }, "dto.ComposeOperation": { "properties": { "force": { @@ -23807,6 +24024,9 @@ "isDisable": { "type": "boolean" }, + "isLocal": { + "type": "boolean" + }, "key": { "type": "string" }, @@ -25394,6 +25614,12 @@ }, "type": "array" }, + "processCount": { + "items": { + "type": "integer" + }, + "type": "array" + }, "speedValue": { "items": { "type": "integer" @@ -27208,6 +27434,17 @@ ], "type": "object" }, + "dto.SSHDefaultConn": { + "properties": { + "defaultConn": { + "type": "string" + }, + "withReset": { + "type": "boolean" + } + }, + "type": "object" + }, "dto.SSHInfo": { "properties": { "autoStart": { @@ -28649,6 +28886,9 @@ "status": { "type": "string" }, + "streamPorts": { + "type": "string" + }, "type": { "type": "string" }, @@ -29210,6 +29450,82 @@ ], "type": "object" }, + "request.BatchWebsiteHttps": { + "properties": { + "SSLProtocol": { + "items": { + "type": "string" + }, + "type": "array" + }, + "algorithm": { + "type": "string" + }, + "certificate": { + "type": "string" + }, + "certificatePath": { + "type": "string" + }, + "hsts": { + "type": "boolean" + }, + "hstsIncludeSubDomains": { + "type": "boolean" + }, + "http3": { + "type": "boolean" + }, + "httpConfig": { + "enum": [ + "HTTPSOnly", + "HTTPAlso", + "HTTPToHTTPS" + ], + "type": "string" + }, + "httpsPorts": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "ids": { + "items": { + "type": "integer" + }, + "type": "array" + }, + "importType": { + "type": "string" + }, + "privateKey": { + "type": "string" + }, + "privateKeyPath": { + "type": "string" + }, + "taskID": { + "type": "string" + }, + "type": { + "enum": [ + "existed", + "auto", + "manual" + ], + "type": "string" + }, + "websiteSSLId": { + "type": "integer" + } + }, + "required": [ + "ids", + "taskID" + ], + "type": "object" + }, "request.BatchWebsiteOp": { "properties": { "ids": { @@ -31211,6 +31527,32 @@ ], "type": "object" }, + "request.StreamUpdate": { + "properties": { + "algorithm": { + "type": "string" + }, + "name": { + "type": "string" + }, + "servers": { + "items": { + "$ref": "#/definitions/dto.NginxUpstreamServer" + }, + "type": "array" + }, + "streamPorts": { + "type": "string" + }, + "websiteID": { + "type": "integer" + } + }, + "required": [ + "websiteID" + ], + "type": "object" + }, "request.SupervisorProcessConfig": { "properties": { "autoRestart": { @@ -31494,6 +31836,9 @@ "IPV6": { "type": "boolean" }, + "algorithm": { + "type": "string" + }, "alias": { "type": "string" }, @@ -31546,6 +31891,9 @@ "ftpUser": { "type": "string" }, + "name": { + "type": "string" + }, "parentWebsiteID": { "type": "integer" }, @@ -31564,9 +31912,18 @@ "runtimeID": { "type": "integer" }, + "servers": { + "items": { + "$ref": "#/definitions/dto.NginxUpstreamServer" + }, + "type": "array" + }, "siteDir": { "type": "string" }, + "streamPorts": { + "type": "string" + }, "taskID": { "type": "string" }, @@ -32763,6 +33120,9 @@ "type": "string" }, "type": "array" + }, + "type": { + "type": "string" } }, "type": "object" @@ -33998,6 +34358,9 @@ "accessLogPath": { "type": "string" }, + "algorithm": { + "type": "string" + }, "alias": { "type": "string" }, @@ -34082,6 +34445,12 @@ "runtimeType": { "type": "string" }, + "servers": { + "items": { + "$ref": "#/definitions/dto.NginxUpstreamServer" + }, + "type": "array" + }, "siteDir": { "type": "string" }, @@ -34091,6 +34460,9 @@ "status": { "type": "string" }, + "streamPorts": { + "type": "string" + }, "type": { "type": "string" }, diff --git a/core/cmd/server/docs/x-log.json b/core/cmd/server/docs/x-log.json index f96634380..2117d68ec 100644 --- a/core/cmd/server/docs/x-log.json +++ b/core/cmd/server/docs/x-log.json @@ -296,6 +296,15 @@ "formatZH": "创建compose[name]", "formatEN": "createcompose[name]" }, + "/containers/compose/clean/log": { + "bodyKeys": [ + "name" + ], + "paramKeys": [], + "beforeFunctions": [], + "formatZH": "清理容器编排[name]日志", + "formatEN": "cleancompose[name]logs" + }, "/containers/compose/operate": { "bodyKeys": [ "name", @@ -1013,24 +1022,6 @@ "formatZH": "服务器代理配置[proxyPort]:[proxyPort]", "formatEN": "setproxy[proxyPort]:[proxyPort]." }, - "/core/settings/rollback": { - "bodyKeys": [ - "id" - ], - "paramKeys": [], - "beforeFunctions": [ - { - "input_column": "id", - "input_value": "id", - "isList": false, - "db": "upgrade_logs", - "output_column": "old_version", - "output_value": "version" - } - ], - "formatZH": "回滚系统=\u003e[version]", - "formatEN": "rollbacksystem=\u003e[version]" - }, "/core/settings/ssl/update": { "bodyKeys": [ "ssl" @@ -1799,6 +1790,15 @@ "formatZH": "修改用户/组[paths]=\u003e[user]/[group]", "formatEN": "Changeowner[paths]=\u003e[user]/[group]" }, + "/files/preview": { + "bodyKeys": [ + "path" + ], + "paramKeys": [], + "beforeFunctions": [], + "formatZH": "预览文件内容[path]", + "formatEN": "Previewfilecontent[path]" + }, "/files/recycle/clear": { "bodyKeys": [], "paramKeys": [], @@ -2346,6 +2346,15 @@ "formatZH": "从系统快照[name]回滚", "formatEN": "Rollbackfromsystembackup[name]" }, + "/settings/ssh/conn/default": { + "bodyKeys": [ + "defaultConn" + ], + "paramKeys": [], + "beforeFunctions": [], + "formatZH": "本地终端默认连接[defaultConn]", + "formatEN": "updatesystemdefaultconn[defaultConn]" + }, "/settings/update": { "bodyKeys": [ "key", @@ -2577,12 +2586,12 @@ }, "/websites": { "bodyKeys": [ - "primaryDomain" + "alias" ], "paramKeys": [], "beforeFunctions": [], - "formatZH": "创建网站[primaryDomain]", - "formatEN": "Createwebsite[primaryDomain]" + "formatZH": "创建网站[alias]", + "formatEN": "Createwebsite[alias]" }, "/websites/:id/https": { "bodyKeys": [